https://kotamanegi.com/Problems/view/?page=67
解法
https://kotamanegi.com/Submission/view/index.php?SubmissionID=1509
ゲームの後退解析のように解いていく。
chk(f,s) := 5文字の単語がf個、7文字の単語がs個でターンが回ってきたときに勝てるか
もし、2≦fかつ1≦sであれば、発声して相手にターンを渡せる。
その場合の自分の勝敗は、相手のターンが勝ち状態なら負け、負け状態なら勝ちの遷移先と逆になる。
int F, S; //--------------------------------------------------------------------------------------------------- int chk(int f, int s) { if (f < 2 or s < 1) return 0; return 1 - chk(f - 2, s - 1); } //--------------------------------------------------------------------------------------------------- void _main() { cin >> F >> S; if (chk(F, S)) printf("O\n"); else printf("K\n"); }