链接
题意:给你n个石子,每次都可以移走几颗,最多一次移K颗,但是必须是连续的!!!adrien先移,最后到谁那没有石子可移动了谁就赢了。两个人都采用最优策略,问谁会赢
分析:
如果是奇数个,先手先中间移走奇数个变为偶数个,也就分为相等的两半,后手移哪个,先手跟着移就行,因为只能移连续的,所以可以一直保持对称,先手跟着走完最后一步
如果偶数个,先手移走偶数个分为两段同上。如果是k=1,且是偶数个,先手必败。还有注意开局为0先手也必败
AC代码:
#include<bits/stdc++.h>
using namespace std;
int n,k,flag;
int main()
{
flag=1;
scanf("%d%d",&n,&k);
if(n==0)
flag=2;
else if(n%2==0&&k==1)
flag=2;
if(flag==1)
printf("Adrien\n");
else printf("Austin\n");
}