解析:
有一个性质就是A执行了k次,那么B才执行k-1次
所以我们把A执行几次算出来。
假设A执行k次
那么B肯定执行了(k-1).构成自身的伤害为(k-1)*(atk1-m)
那么第k次肯定是-atk1 因为A只能执行k次,k次执行完了后面什么操作都没用
所以再加上atk1.
所以B受到的伤害为(k-1)*(atk1-m)+atk1
如果B<=0 胜利 否则失败
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll h1,h2,a1,a2,m;
int t;
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);cout.tie(0);
cin>>t;
while(t--)
{
cin>>h1>>h2>>a1>>a2>>m;
if(h2<=a1) cout<<"Yes"<<endl;
else if(m>=a1) cout<<"No"<<endl;
else
{
ll k;
if(h1%a2) k=h1/a2+1;
else k=h1/a2;
h2-=(k-1)*(a1-m)+a1;
if(h2<=0) cout<<"Yes"<<endl;
else cout<<"No"<<endl;
}
}
}