1、学会了用Cena测评,还是很方便的。
2、这题用贪心法,模拟可以做,但效率很低。
3、刚开始sort的个数是n个,所以出错了,应该为m个,所以要小心!
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
int main()
{
freopen("water.in","r",stdin);
freopen("water.out","w",stdout);
int n,m,a[10010],b[110],max;
while(scanf("%d%d",&n,&m)==2){
for(int i=0;i<n;i++)
scanf("%d",&a[i]);
if(n<=m){
max=0;
for(int i=0;i<n;i++)
if(a[i]>max) max=a[i];
printf("%d\n",max);
}else{
for(int i=0;i<m;i++)
b[i]=a[i];
for(int i=m;i<n;i++){
sort(b,b+m);
b[0]+=a[i];
}
max=0;
for(int i=0;i<m;i++)
if(b[i]>max) max=b[i];
printf("%d\n",max);
}
}
return 0;
}