春联(博弈论)

#include<bits/stdc++.h>
using namespace std;

char s[110][110];
int main () {
    string s;
    cin >> s;
    int i, j = s.size() - 1;
    i = j - 1;
    for (i = j - 1; i >= 0; i --)
        if (s[i] == s[j]) j = i - 1, i = j;
    if (j < 0) puts("yukari");
    else puts("kou");
    return 0;
}

https://ac.nowcoder.com/acm/contest/28335/E
首先找到必胜点chr,然后向前推,找到最近的一个chr,这个区间是必败区间,以此推类,最终判断j是否在合法区间方范围内,如果在,先手就必胜,否则后手必胜

上一篇:迷宫的最短路径


下一篇:前端3+1(Day16)