题解 1936: 蓝桥杯算法提高VIP-最大乘积

来看看其他人写的题解吧!要先自己动手做才会有提高哦! 
返回题目 | 我来写题解

筛选

蓝桥杯算法提高VIP-最大乘积-题解(C/C++语言代码)

1.解题思路:因为有可能有负数,所以不能一直选最大的。那么,先把数列从小到大排序,每次选两个最大数相乘,再选择两个最小的数相乘,比较两个乘积的大小,如果是两个小数乘积大(肯定是两个绝对值较大负数),那么直接乘给最终结果并且移动指针,如果是较大的两个数乘积较大,

蓝桥杯算法提高VIP-最大乘积-题解(Java代码)

解题思路:本题主要是通过改用排序算法,将比较标准改成两个数之间绝对值之间的比较,如此就可以得到按照绝对值的大小排序的一个序列;然后从已排序的序列中从按次序取m个数累乘。在累乘之前应该先计算在m个数的范围内,有几个数是负数,如果数量为偶数,则可以直接完成对m个数的累乘;如果数量为奇数,

蓝桥杯算法提高VIP-最大乘积-题解(Java代码)

这题可以使用贪心写,但是比较麻烦,得比来比去,于是我就想使用dfs来写,因为数据规模不大,应该也不会超时,如果超时就得考虑动态规划了。```javaimportjava.util.Scanner;publicclassMain{publicstaticintvis[]=newint[16];publi

蓝桥杯算法提高VIP-最大乘积-题解(Java代码)

f#[蓝桥杯][算法提高VIP]最大乘积-题解(Java代码)##解题思路-**1、读入n值时候,创建对应大小为n行2列的二维数组,每一行的第一个元素作为`符号位`:-1代表负数,0代表0,1代表正数,第二个元素存放键入的值的绝对值**-2、**利用选择排序按a[i][1]降序排序**-**3、使用贪

python-最大乘积

摘要:解题思路:深度优先算法。所给出的两个数只有两个状态,选中和未选中。然后据此写出代码即可注意事项:参考代码:from cmath import inf      def dfs(temp,cnt,n……