华师一附中OI组
标题:
P1094 纪念品分组
[打印本页]
作者:
倚窗倾听风吹雨
时间:
2018-7-20 16:16
标题:
P1094 纪念品分组
https://www.luogu.org/problemnew/show/P1094
作者:
倚窗倾听风吹雨
时间:
2018-7-20 16:17
#include<iostream>
#include<cmath>
#include<algorithm>
using namespace std;
int w,n,a[30010],ans;
int i,j;
int main()
{
cin>>w;
cin>>n;
for(i=1;i<=n;i++)
cin>>a[i];
///cout<<endl;
sort(a+1,a+n+1);
/*for(i=1;i<=n;i++)
cout<<a[i]<<" ";
cout<<endl;*/
i=n;
for(j=1;j<=i;j++)
{
while(a[j]+a[i]>w)
{i--;ans++;}
ans++;
i--;
}
cout<<ans;
return 0;
}
复制代码
作者:
黄煦喆
时间:
2018-8-29 16:00
#include<iostream>
#include<algorithm>
using namespace std;
int w,n,ans;
int p[30001],b[30001];
int main()
{
cin>>w>>n;
for(int i=1; i<=n; i++)
{
cin>>p[i];
b[i]++;
}
sort(p+1,p+n+1);
for(int i=1; i<=n; i++)
{
if(b[i])
{
b[i]--;
for(int j=n; j>i; j--)
if(b[j]&&p[j]<=w-p[i])
{
b[j]--;
break;
}
ans++;
}
}
cout<<ans;
return 0;
}
复制代码
作者:
universehyf
时间:
2018-10-21 20:46
#include<iostream>
#include<algorithm>
using namespace std;
#define FOR(i,n,m) for(int i=n;i<=m;i++)
int w,n,a[30010],i,j,ans;
int main()
{
cin>>w>>n;
FOR(i,1,n) cin>>a[i];
sort(a+1,a+n+1);
int i=1,j=n;
while(i<=j)
{
if(a[i]+a[j]<=w)i++;
ans++;j--;
}
cout<<ans;
return 0;
}
复制代码
欢迎光临 华师一附中OI组 (http://hsyit.cn/)
Powered by Discuz! X3.2