1280 前m大的数.cpp
来自「威士忌的HDU题解.大概有260多题的源码。对于学习非常有好处。」· C++ 代码 · 共 40 行
CPP
40 行
#include <cstdio>
#include <string>
using namespace std;
int num[3001];
int pplus[10001];
int main()
{
int i,j,n,m,max,t;
while( scanf("%d %d",&n,&m)!=EOF )
{
memset(pplus,0,sizeof(pplus));
max=0;
for(i=0;i<n;i++)
scanf("%d",&num[i]);
for(i=0;i<n;i++)
for(j=i+1;j<n;j++)
{
t=num[i]+num[j];
pplus[ t ]++;
max = max > t ? max : t;
}
printf("%d",max);
m--;
pplus[max]--;
for(i=max;i>=0 && m;i--)
{
while(pplus[i]>0 && m)
{
printf(" %d",i);
m--;
pplus[i]--;
}
}
printf("\n");
}
return 0;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?