4. 大魔法使小信
题目ID:20467必做题文件操作100分
最新提交:
Wrong Answer
25 分
历史最高:
Wrong Answer
25 分
时间限制: 1000ms
空间限制: 262144kB
输入文件名: mahou.in
输出文件名: mahou.out
题目描述
小信是大魔法使,他现在有nn个魔法球a1,a2,…,ana1,a2,…,an,每个球都具有一定的魔力,他可以吸收这些魔法球来增强自己的魔力。但是魔法球的魔力非常不稳定,如果小信吸收的魔力值超过了pp,这些不稳定的魔力就会对他造成伤害。
小信想要知道在他不受到伤害的前提下,最多能吸收多少魔力。
输入格式
第一行输入两个正整数n(1≤n≤40)n(1≤n≤40)和p(1≤p≤109)p(1≤p≤109),分别表示魔法球的数量和小信收到伤害的临界魔力值。
第二行输入nn个正整数a1,a2,…,an(1≤ai≤109)a1,a2,…,an(1≤ai≤109),表示魔法球的魔力值。
输出格式
输出一个整数,表示小信在不受伤害的前提下能吸收的最多的魔力值。
样例
Input 1
5 17 2 3 5 7 11
Output 1
17
Input 2
6 100 1 2 7 5 8 10
Output 2
33
Input 3
5 20 21 22 23 24 25
Output 3
0
样例解释
对于样例#1,小信的最好选择是:2+3+5+7=172+3+5+7=17,最多可以获得1717点魔力值。
数据范围
对于10%10%的数据,有1≤n≤5,1≤p≤1000,1≤ai≤10001≤n≤5,1≤p≤1000,1≤ai≤1000。
对于30%30%的数据,有1≤n≤16,1≤p≤109,1≤ai≤1091≤n≤16,1≤p≤109,1≤ai≤109。
对于100%100%的数据,有1≤n≤40,1≤p≤109,1≤ai≤1091≤n≤40,1≤p≤109,1≤ai≤109。
#include<bits/stdc++.h>
using namespace std;
int n,k,sum;
int a[10000005];
int main(){
// freopen(mahou.in,"r",stdin);
// freopen(mahou.out,"w",stdout);
cin>>n>>k;
for(int i=1;i<=n;i++){
cin>>a[i];
if(sum+a[i]<=k)sum+=a[i];
}
cout<<sum;
return 0;
}
那位大佬能告诉我为什么25分