NYOJ 1309 冰法斗神龙
来源:互联网 发布:淘宝手机详情文字大小 编辑:程序博客网 时间:2024/04/28 04:26
描述
强大的冰魔法师zz一路过关闯将,终于独自一人杀到了神龙面前。神龙的血量值为HP,正常状态下每秒进行一次攻击,伤害值为DAMAGE。zz精通n种瞬发冰控魔法(在同一秒内,zz发动的冰魔法要比神龙的攻击快上一点),第i(1<=i<=n)种魔法伤害值为damage[i],并使神龙进入冰冻状态(神龙在冰冻状态下不会进行攻击,且如果神龙在冰冻状态下再次受到冰魔法的攻击,则冰冻时间累加),维持freeze[i]秒,使用完后有cd[i]秒的时间不得使用任何魔法。当zz与神龙有一方的血量值小于等于0时,即判定那一方死亡。zz想杀神龙,但是又怕死,所以请你帮他判断一下以他现有的血量hp和他的技能,能否强杀神龙。
输入
第一行输入整数T代表T组数据,T<=30
输入数据的第一行为2个整数HP(0< HP<10^8) DAMAGE (0< DAMAGE<10^8) 分别代表神龙的血量值和神龙每次的攻击值。
第二行也是2个整数hp(0< hp<10^8),n(1<=n<=1000000) 分别代表zz的血量以及zz会的魔法种类数。
第三行到n+2行每行均为3个整数damage[i] (0<=damage<=100),freeze[i] (0<=freeze[i]<=100),cd[i] (1<=cd[i]<=100),(1<=i<=n)分别代表第i种魔法的伤害值,冰控时间,冷却时间。
输出
输出只有一行YES或NO,分别代表能杀死神龙和不能杀死神龙。
样例输入
2
20 4
10 2
3 1 2
5 0 1
20 3
10 2
3 1 2
5 0 1
样例输出
NO
YES
c++
#include <cstdio>#include <iostream>#define inf (0x3f3f3f3f)using namespace std;const int maxn = 1000000 + 20;int att[maxn];int fre[maxn];int wait[maxn];void work() { int HP, hurt; int MYHP, m; scanf("%d%d%d%d", &HP, &hurt, &MYHP, &m); int mx = -inf; for (int i = 1; i <= m; ++i) { scanf("%d%d%d", &att[i], &fre[i], &wait[i]); mx = max(mx, att[i]); //最大攻击力 } int need = MYHP / hurt + ((MYHP % hurt) > 0); for (int i = 1; i <= m; ++i) { int dis = wait[i] - fre[i]; if (dis == 0 && att[i] == 0) continue; if (dis == 0 && att[i] != 0) { //冷却时间等于冰冻时间且攻击力不为0 printf("YES\n"); return; } if (dis < 0 && mx != 0) { //冷却时间小于冰冻时间且最大攻击力不为0 printf("YES\n"); return; } if (dis < 0 && mx == 0) { continue; } int how = need / dis + ((need % dis) > 0); //how为冰法能攻击次数 int cut = (how - 1) * att[i] + mx; //cut为冰法以本魔法为攻击的最大攻击力 if (cut >= HP) { printf("YES\n"); return; } } printf("NO\n"); return;}int main() { int t; scanf("%d", &t); while (t--) work(); return 0;}
阅读全文
1 0
- NYOJ 1309 冰法斗神龙
- 冰法斗神龙 (贪心)
- FZU1686-神龙的难题
- fzu 1686 神龙的难题
- FZU 1686 神龙的难题
- FZU-1686 神龙的难题
- 神龙云服务器,值得期待
- 神龙云服务器,值得期待
- 神龙神窗2006设计设摘要
- FZU1686--神龙的难题(Dancing Links)
- 【FZU】1686 神龙的难题 重复覆盖
- FZU 1686 神龙的难题 重复覆盖
- 神龙的难题 (FZU 1686)
- DLX重复覆盖 fzu1686 神龙的难题
- FZU 1686 神龙的难题 [DLX] [RepeatCover]
- MicroKMS神龙版激活工具使用指南
- 白云苍狗看复鹿 冥鸿相助见神龙
- NYOJ
- 欢迎使用CSDN-markdown编辑器
- 基于DL的目标检测概述
- C#动态创建类和使用特性增强程序可扩展性
- uva 10237 n x n棋盘上放k个棋子 棋子不能在同一斜线上 求总类数
- java中的final修饰符
- NYOJ 1309 冰法斗神龙
- Eclipse使用中遇到的问题及其解决
- 机器人的项链 HDU
- $(window).scroll() 方法不能触发
- Linux 进程总结
- Active Learning: 一个降低深度学习时间,空间,经济成本的解决方案|CVPR 2017
- 一张图看懂字符编码
- HDU 6043 KazaQ's Socks(水~)
- 友善之臂S3C2451开发板如何用MiniTools下载裸机程序