CPP 1019 打怪的力量

题目链接:打怪的力量


题面:

打怪的力量 
Time Limit:1000MS  Memory Limit:32768K

Description:

Tyr最喜欢吃罐装的菠菜,因为Tyr的力量来自于吃掉的菠菜。每次Tyr出去冒险的时候都会带上很多的菠菜罐头,当遇到危险的时候,他就会从背包里拿出菠菜罐头,以最快的速度吃掉它们,以最快的速度增加力量,从而克服困难。根据历史的统计数据,Tyr拿出一个菠菜罐头需要花费A s的时间,吃掉一个菠菜罐头的时间是B s。每当Tyr遇到一个怪物的时候,怪物会在C s之后的时间里吃掉Tyr。但是,如果Tyr能够在C s的时间里把力量从原来的D增加到E,他就能够打败怪物。 现在又有一个怪物出现在Tyr面前了!Tyr能够打败怪物吗?

Input:

输入数据有多组。第一行是一个整数N(1<=N<=10),表示有N组测试数据。每组测试数据有2行: 第一行:首先是一个整数M(1<=M<=10000),表示Tyr的背包里有M个菠菜罐头;其后M个整数表示每个菠菜罐头可以增加的力量。 第二行:A B C D E

Output:

对于每组测试数据,如果Tyr能够打败怪物,请输出“Tyr is great!”;否则请输出“Tyr is not so great!”。

Sample Input:

2
4 1 1 1 1
1 1 6 12 15
4 1 1 1 1
1 1 3 12 15

Sample Output:

Tyr is great!
Tyr is not so great!

Source:

Jin Shujing


题意:模拟吃罐头就好了,先吃加能量最多的,一直吃直到超时,最后比较是否到达e即可。


代码:

#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
int main()
{
    int x,n,a,b,c,d,e,store[10005],tmp,t,tt,p;
	cin>>x;
	while(x--)
	{
		cin>>n;
		for(int i=0;i<n;i++)
		cin>>store[i];
		sort(store,store+n);
		cin>>a>>b>>c>>d>>e;
		t=a+b;
		tt=t;
		p=n-1;
		while(tt<=c&&p>=0)
		{
		   d+=store[p];
		   p--;
		   tt+=t;	
		}
		if(d>=e)
		cout<<"Tyr is great!\n";
		else cout<<"Tyr is not so great!\n";
	} 
	return 0;
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值