比较暴力的一种写法
直接保存之后把两两相加的结果保存在另一个数组
之后排序……
#include<stdio.h>
#include<algorithm>
using namespace std;
int a[3200],b[3000*1500];
int main() {
int n,m;
while(scanf("%d %d",&n,&m)!=EOF) {
for(int i=0; i<n; i++)
scanf("%d",&a[i]);
int cnt=0;
for(int i=0; i<n; i++) {
for(int j=i; j<n; j++) {
if(i==j)
continue;
else {
b[cnt++]=a[i]+a[j];
}
}
}
sort(b,b+cnt);
for(int i=cnt-1,k=0; k<m; k++,i--) {
printf("%d",b[i]);
if(k==m-1)
printf("
");
else
printf(" ");
}
}
return 0;
}
题目地址:【杭电】[1280]前m大的数