题意:法师有能量 n ,每秒可以花费 x 释放一次技能,有两种基本技能,花费x能量释放一次技能,每秒会自动恢复y能量, m 秒内能最多放几次技能
题解:x + y ≤ n 如果有 x ≤ y, 则他显然每秒都能释放一次技能,如果有 x > y, 则前 m -1 秒内恢复的魔法值都可以被利用上
答案为
总结:做题的时候思路是有的,但是实现的时候有一个点过不了,应该是实现的方法有问题
#include<iostream> #include<string> #include<cstring> #include<cstdio> #include<cmath> #include<algorithm> using namespace std; typedef long long ll; int main(){ ios::sync_with_stdio(false); int t; cin>>t; while(t--){ ll n,m,x,y,counts=0,temp=0; cin>>n>>m>>x>>y; temp=floor((n+(m-1)*y)/x); cout<< min(temp,m)<<endl; } return 0; }