A题:
我们知道国王给ZZH的令牌可以叠加使用。
所以,当有一天,ZZH手上的所有令牌调用的骑士加上ZZH自己的战斗力和大于巨龙当天的体力值时,就可以在当天救出公主。
定义sum
代表如果ZZH使用现有所有令牌后具有的战斗力和。
sum初始值为2,因为一开始ZZH没有令牌,他自身的战斗力为2。
定义ans
用于存储战胜巨龙的那一天。
ans初始值为0
我们利用循环来模拟这n天。
每天读取一个x,x表示当天国王所给令牌能调用的骑士数。
接着让sum加上x。表示如果ZZH当天使用所有已有的令牌所具有的战斗力。
拿sum和当天巨龙的体力值作比较。大于,就用ans保存当天是第几天。如果小于或等于巨龙体力值,说明当天无法战胜巨龙,当天不会使用任何令牌。
注意题目给的是巨龙第一天的体力值,巨龙每天恢复h点体力,所以每次循环末尾要给巨龙体力值加上h。
循环结束后判断ans
ans==0代表这n天,ZZH都不能救出公主。输出"ZZH will die!"
其余情况直接输出ans表示救出公主是在第几天。
B题:
我们可以把题目中的四个人分成两类人。
付钱的:欠的钱比借出去的钱多的人
拿钱的:借出去的钱比欠的钱多的人
我们只需要分析付钱的人(或拿钱的人)一共付(得)了多少钱,就知道四个人清账需要流通的最少钱数了。
付钱的人付的钱 =拿钱的人得的钱
我们可以同时计算付钱的人要付的钱和拿钱的人得的钱。结果除以2就是答案。
C题:
注意两点。
1.输入的两个整数,可能生年在前卒年在后,也可能卒年在前生年在后。
2.不存在公元0年。如果一个人生于公元前1年,死于公元1年,那么这个人只活了1岁。
所以我们对于同号的两个整数,求出整数差的绝对值输出即可。
对于不同号的两个整数,因为不存在公元0年,所以我们求出整数差的绝对值再减去1,才是正确结果。
D题:
既是偶数又是质数的数只有2.
所以判断,如果n到m 的范围里含有2,直接输出2;
如果不含2 输出
MDZZ!
E题:
考察条件语句。
如果是输入月份是4,6,9,11直接输出30.
如果输入月份是2,判断是否为闰年,是的话输出29,否则输出28.
其余情况输出31
F题:
打印题。
需要观察规律。