A题,蛮有意思。不难,但是做出来成就感很强,感觉自己非常nb
然后被后面的题整到自闭
#include<stdio.h> int main() { long long t,m,n,x,y,add,t1,t2,temp; scanf("%lld",&t); for(;t>0;t--) { scanf("%lld %lld %lld %lld",&n,&m,&x,&y); //先计算到第一次枯竭 if(y>=x) { printf("%lld\n",m); continue; } t1=(n-x)/(x-y)+1;//在这么多次之后首次枯竭 if(m<=t1)//枯竭之前时间已经耗尽 { printf("%lld\n",m); continue; } temp=(m-t1-1)*y+n-t1*x+t1*y;//枯竭后至m时总共回复了这么多蓝+枯竭时蓝 t2=t1+temp/x; printf("%lld\n",t2); } return 0; }