时间限制:1Sec内存限制:128MB通过:36提交:54
题目描述
ACMer们靠着准确的路线推断,成功的返回了逸夫楼。谁知G星人的追兵已经到了,大家急忙拿起武器准备与G星人决战。现在逸夫楼仅有一架防空火炮以及m个质量不一的炮弹,火炮的载弹量有限,每次仅仅能填入总质量不超过v的炮弹。
大战在即,请你帮忙计算出这门火炮一次最多能够装入多少炮弹?
输入
数据输入包括两行,第一行有两个正整数m,v
第二行为m个正整数,分别表示m个炮弹的质量。
输出
输出包含一行有一个正整数,表示最多能装填的炮弹数量。
样例输入
4 5
3 5 2 1
样例输出
2
提示
1<=n<=2000
#include <bits/stdc++.h>
using namespace std;
int main()
{
int m,v;
cin>>m>>v;
int a[105],i;
for(i=0;i<m;i++)
{
cin>>a[i];
}
sort(a,a+i);
int sum=0,coun=0;
for(int i=0;i<m;i++)
{
if(sum+a[i]<v)
{
sum+=a[i];
coun++;
}
}
cout<<coun;
}