我的思路是这样的,不过写着写着没时间了,还是自己太菜了啊!
/*
1、先把整个数组改成正负交错的数组,去掉首尾的负数(相邻的正数合并成一个正数,负数合并成一个负数)
2、如果正数个数<=M,输出所有的正数之和
3、如果正数个数>M,将数组中[正负正]合并,该负数为数组中负数的最大值并且三者之和>三者最大值
4、直到3不满足或者正数个数<=M,输出最大的M个正数之和
*/