2018寒假训练第一场——吃鸡跑毒篇
2018-02-17 21:38
309 查看
题目描述
现在有一款很火的游戏playerunknown’s battlegrounds,人称“吃鸡”,在里面经常面临跑毒(从安全区外跑进安全区内)的问题,在安全区外,人们会处于中毒状态,每秒会掉a%血,人们可以通过使用道具急救包把血量升回到80%,使用急救包需要原地站着6秒。现在知道在安全区外扣血速度为a%/s,角色和安全区的距离为b米,角色跑步速度为1m/s,角色有c个急救包,请问角色是否能安全跑进安全区内。
(PS:角色开始的血量为100%。如果血量降到0%,立刻判定为死亡。使用急救包时,如果刚使用完毕瞬间或者正在使用急救包的时候,
血量降到0%,角色立即判定为死亡。顺带一提,这里判断时间不存在0.xxxx秒,最小时间单位为1s)
输入描述:
第一行是样例数T(T<9)
第2到2+T-1行每行有三个整数a b c,其中a为安全区外的扣血速度a%/s,b为角色和安全区的距离,c为急救包的数量。
输出描述:
如果角色能进入安全区输出“YES”。
若角色在安全区外死亡输出“NO”。
示例1
输入
3
1 100 2
6 31 2
7 31 2
输出
YES
YES
NO
说明
当a=6,b=31,c=2时,
0s起跑,10s的时候角色跑了10M,血量剩下40%,开始使用急救包,16s的时候,角色血量先降到4%再恢复到80%,然后角色继续跑步。
23s的时候,角色跑了17M,剩余血量为38%,开始使用急救包,29s的时候,角色血量先降到2%再恢复到80%,然后角色继续跑步。
42s的时候,角色跑了30m,血量剩余2%。当43s的时候,角色跑了31m进入了安全区内,不再扣血。
备注: 对于100%的数据, 1 <= T < 9; 0 < a <= 20; 0 < b <= 120; 0 <= c <= 8。
代码:
4000
现在有一款很火的游戏playerunknown’s battlegrounds,人称“吃鸡”,在里面经常面临跑毒(从安全区外跑进安全区内)的问题,在安全区外,人们会处于中毒状态,每秒会掉a%血,人们可以通过使用道具急救包把血量升回到80%,使用急救包需要原地站着6秒。现在知道在安全区外扣血速度为a%/s,角色和安全区的距离为b米,角色跑步速度为1m/s,角色有c个急救包,请问角色是否能安全跑进安全区内。
(PS:角色开始的血量为100%。如果血量降到0%,立刻判定为死亡。使用急救包时,如果刚使用完毕瞬间或者正在使用急救包的时候,
血量降到0%,角色立即判定为死亡。顺带一提,这里判断时间不存在0.xxxx秒,最小时间单位为1s)
输入描述:
第一行是样例数T(T<9)
第2到2+T-1行每行有三个整数a b c,其中a为安全区外的扣血速度a%/s,b为角色和安全区的距离,c为急救包的数量。
输出描述:
如果角色能进入安全区输出“YES”。
若角色在安全区外死亡输出“NO”。
示例1
输入
3
1 100 2
6 31 2
7 31 2
输出
YES
YES
NO
说明
当a=6,b=31,c=2时,
0s起跑,10s的时候角色跑了10M,血量剩下40%,开始使用急救包,16s的时候,角色血量先降到4%再恢复到80%,然后角色继续跑步。
23s的时候,角色跑了17M,剩余血量为38%,开始使用急救包,29s的时候,角色血量先降到2%再恢复到80%,然后角色继续跑步。
42s的时候,角色跑了30m,血量剩余2%。当43s的时候,角色跑了31m进入了安全区内,不再扣血。
备注: 对于100%的数据, 1 <= T < 9; 0 < a <= 20; 0 < b <= 120; 0 <= c <= 8。
代码:
#include<bits/stdc++.h> using namespace std; int main() { int T; int a,b,c; scanf("%d",&T); while(T--) { scanf("%d%d%d",&a,&b,&c); int sum=100; while(1) { b--; sum-=a; if(b==0) { printf("YES\n"); break; } if(sum<=0) { printf("NO\n"); break; } if(sum>6*a&&sum<=7*a&&c>0) { sum=80; c--; } } } return 0; }
4000
相关文章推荐
- 2017 多校训练第一场 Add More Zero
- 2016ACM多校训练第一场_1001_Abandoned Country 并查集+DFS
- hdu 4607 park visit 2013多校联合训练第一场
- HDU 4869 Turn the pokers (2014多校联合训练第一场1009) 解题报告(维护区间 + 组合数)
- hdu 4602 partition 2013多校联合训练第一场
- 2017暑假训练第一场的一些题目
- 2017 多校训练第一场 KazaQ's Socks
- 2016summer 训练第一场
- 大家一起做训练 第一场 A Next Test
- 2015多校联合训练第一场Tricks Device(hdu5294)
- HDU 4864 Task (2014多校联合训练第一场1004) 解题报告(贪心)
- (2017多校训练第一场)HDU - 6038 Function 排列分解
- HDU 6044& 2017年多校训练第一场 1012题
- 2015 ACM多校训练第一场
- 大家一起做训练 第一场 B Tournament
- 第一场个人训练赛——F-第几天?(HDU 2005)
- 2017 多校训练第一场 HDU 6034 Balala Power!
- 大家一起做训练 第一场 E Number With The Given Amount Of Divisors
- 2017多校训练第一场
- HDU 6040& 2017年多校训练第一场 1008题