题目

牛牛爱博弈

思路

找规律。看下表。
规律

首先如果开始数量为 一定是牛牛输,如果数量为 都是牛牛赢。

考虑数量为 牛牛只能可以取 或者 转移到牛妹必赢的状态。

可以转移到 可以转移到 。继续往下推可以发现只有 的倍数只能转移到一种必胜状态,因此如果数量是 的倍数就是牛妹必胜,否则牛牛必胜。

图片来自上海交通大学方泓杰前辈的课件。

Code

#include <cstdio>
#include <cstring>
#include <string>
#include <iostream>
#include <algorithm>

int t, n;

int main() {
    scanf("%d", &t);
    while(t--) {
        scanf("%d", &n);
        if (n % 3 == 0) puts("Frame");
        else puts("Alan");
    }
    return 0;
}