题目超长,讲了很多废话,其实就是巴什博弈的变形。
1、若当前石子共有n =(p+q)* r个,则先手必胜,必胜策略为:第一次取q个,以后每次若后手取K个,先手再取取(p+q-k)个,如此下去最后必剩下p个给后手,所以先手必胜。
2、若n =(p+q)* r + left个(1< left <= p)先手必败,必胜策略为:每次取石子活动中,若先手取k个,则后手去(p+q-k)个,那么最后剩下left个给先手,此时left <= p,先手必败。
若n =(p+q)* r + left个(p < left ),则先手可以拿走(q-1)个,则留下一个必败态也就是上面提到的2状态,先手必胜。
#include<iostream>
#include<cstdio>
#include<cmath>
#include<algorithm>
using namespace std;
int main(){
int n,p,q,x;
while(scanf("%d%d%d",&n,&p,&q) != EOF){
x = n % (p + q);
if(x>0&&x<=p)
puts("LOST");
else
puts("WIN");
}
return 0;
}