列表

详情


NC236326. 魔法寄录

描述

小 L 在单抽一发爆出限定角色后决定用这个角色打魔法寄录的 boss battle。

为了简化游戏过程,boss 可以想象成一个 HP 为 h 的九宫格。若一次攻击攻击到了 x 格,并且伤害为 y,则 boss 的 HP 会减少

小 L 操控的角色有两种攻击方式:Normal 和 Blast。一次 Normal 可以攻击到任意一格并且伤害为 a;一次 Blast 可以攻击到一行或者一列并且伤害为 b

每一轮,小 L 可以攻击 5 次。每次攻击可以选择任意一种攻击方式进行攻击。

由于小 L 卡了个 bug 使得角色可以无限闪避,所以 boss 不会对角色产生任何伤害。

你想知道,小 L 最少进行多少轮后,boss 的 HP 会

输入描述

输入 3 个数,h,a,b

输出描述

输出 1 个数,代表所求答案。

示例1

输入:

36 2 1

输出:

3

说明:

每次 blast 对使 boss 的 HP 降低 3\times 1=3,所以如果我们每轮进行五次 Blast 攻击,那么 Boss 会在第 3 轮后 HP \le 0

原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

C++ 解法, 执行用时: 4ms, 内存消耗: 396K, 提交时间: 2022-06-18 20:39:18

#include<bits/stdc++.h>
using namespace std;
int main(){
	int h,a,b;
	cin>>h>>a>>b;
	int p=max(a,3*b);
	cout<<(h/p+5)/5;
	return 0;
}

pypy3 解法, 执行用时: 109ms, 内存消耗: 25820K, 提交时间: 2022-04-30 19:06:44

h, a, b = map(int, input().strip().split())

x = max(a, b*3) * 5

print((h + x - 1) // x)

Python3 解法, 执行用时: 45ms, 内存消耗: 4544K, 提交时间: 2022-04-30 19:05:46

h,a,b=map(eval,input().split())
print(h//(5*max(a,b*3))+1)

上一题