小明在玩一种卡牌游戏,他有 n 张卡牌,每张卡牌上写着一个正整数 ai,表示该卡牌对敌人的伤害值,即打出这张卡牌会使敌人的血量减少 ai。已知敌人的血量为 b,当敌人的血量小于等于 00 时,小明就取得了胜利。

小明需要按照顺序依次使用每张牌,对敌人造成伤害。小明想知道他使用了多少卡牌之后就可以取得胜利了。如果用光所有卡牌,依然不能取得胜利,需要输出 −1。

程序如下:

#include<bits/stdc++.h>
using namespace std;
int main(){
	int n,b,sum=0;//定义
	cin>>n>>b;//输入
	int a[n]={};//定义数组
	for(int i=0;i<n;i++){//循环
		cin>>a[i];//输入卡牌攻击量
	}
	for(int i=0;i<n;i++){//循环
		sum=sum+a[i];
		if(sum>=b) {cout<<i+1; return 0;}
	}
	cout<<"-1";//否则输出-1
}

看到这里了,点个关注吧!!!谢谢!!!

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐