乘积最大 给你两个数 N、K,从 N 个数中选出 K 个使得乘积最大。输出乘积在数学意义上对 109+7 取模的值。 时间限制:1000ms,内存限制:256MB 输入格式 第一行:两个整数 N、K; 第二行:N 个整数 a1、a2、……、an。 输出格式 一个整数表示答案。 输入样例#1 4 2 1 2 -3 -4 输出样例#1 12 输入样例#2 10 10 1000000000 100000000 10000000 1000000 100000 10000 1000 100 10 1 输出样例#2 999983200 数据范围: 1≤K≤N≤2×105,-109≤ai≤109。
正确答案:参考程序(Python):N,K=map(int,input().split());a=list(map(int,input().split()));a.sort();M=10**9+7;from functools import reduce;pos=[x for x in a if x>=0];neg=[x for x in a if x<0];pos.sort(reverse=True);neg.sort();if K%2==0:if len(pos)>=2 or len(neg)>=2:选两两最大
试卷来源:202509 青少年等级考试C/C++真题五级