1 条题解
-
1
首先我们发现如果一个人接下来要拿石子但是石子数 那么这个人就输了
因为我们是先取的,不管我们取多少,后手都有方法取使得我们两个人取的总和为 ,那么也就得出如果说总数 那么一定是不行的
随后我们考虑一定可以赢的情况
那我们可以假设成我们把第一步放到最后一步来取,也就是我们最后一次取的时候取两次,那么这样我们也一定有一种取的方法使得每次两个人取的总和为 如此假设我们最后剩下了 个石子,那么我们要取一次使得最后剩下的个数 ,因为我们最后剩下的 所以我们最少取 个,但是如果我们取完之后不满足剩下的 ,所以我们就最少取 个,所以答案就是
signed main(){ // printf("%lf Mb\n",(&Test_MLE_end-&Test_MLE_start-1)/1024.0/1024.0); // files(); T=reads(); while(T--){ clr(); x=reads(),a=reads(),b=reads(); if(x%(a+b)<a) puts("Lose"); else{ int now=x%(a+b),ans=max(a,now-a+1); printf("%d\n",ans); } } return 0; }
- 1
信息
- ID
- 195
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 6
- 标签
- (无)
- 递交数
- 15
- 已通过
- 13
- 上传者