2017. 决战

时间限制: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;
}


Guess you like

Origin blog.csdn.net/weixin_52908342/article/details/119894558