【COGS 56】质数取石子】的更多相关文章

质数取石子 ★★ 输入文件:stonegame.in 输出文件:stonegame.out 简单对比 时间限制:1 s 内存限制:128 MB 问题描述 DD 和 MM 正在玩取石子游戏.他们的游戏规则是这样的:桌上有若干石子,DD 先取,轮流取,每次必须取质数个.如果某一时刻某一方无法从桌上的石子中取质数个,比如说剩下 0 个或 1 个石子,那么他/她就输了. DD 和 MM 都很聪明,不管哪方存在一个可以必胜的最优策略,他/她都会按照最优策略保证胜利.于是,DD 想知道,对于给定的桌面上的石…
[问题描述] DD 和 MM 正在玩取石子游戏.他们的游戏规则是这样的:桌上有若干石子,DD 先取,轮流取,每次必须取质数个.如果某一时刻某一方无法从桌上的石子中取质数个,比如说剩下 0 个或 1 个石子,那么他/她就输了. DD 和 MM 都很聪明,不管哪方存在一个可以必胜的最优策略,他/她都会按照最优策略保证胜利.于是,DD 想知道,对于给定的桌面上的石子数,他究竟能不能取得胜利呢? 当 DD 确定会取得胜利时,他会说:“不管 MM 选择怎样的取石子策略,我都能保证至多 X 步以后就能取得胜…
题目描述 桌上有若干个石子,每次可以取质数个.谁先取不了,谁就输.问最少几步能赢?(一个人取一次算一步) 输入输出格式 输入格式: 第一行N,表示有N组数据 接下来N行为石子数 输出格式: 每组数据一个数,若必胜,则输出最少步数,否则输出-1 输入输出样例 输入样例#1: 3 8 9 16 输出样例#1: 1 -1 3 说明 石子数≤20000,N≤10 Solution NIm 游戏的质数版 思路基本和原版一致 即每一个必胜状态都由上一次必败的状态转过来.然后需要先一个筛法筛出20000以内的…
洛谷 P4018 Roy&October之取石子 题目背景 Roy和October两人在玩一个取石子的游戏. 题目描述 游戏规则是这样的:共有n个石子,两人每次都只能取 p^kpk 个(p为质数,k为自然数,且 p^kpk 小于等于当前剩余石子数),谁取走最后一个石子,谁就赢了. 现在October先取,问她有没有必胜策略. 若她有必胜策略,输出一行"October wins!":否则输出一行"Roy wins!". 输入输出格式 输入格式: 第一行一个正整…
P4706 取石子 题目描述 现在 Yopilla 和 yww 要开始玩游戏! 他们在一条直线上标记了 \(n\) 个点,从左往右依次标号为 \(1, 2, ..., n\) .然后在每个点上放置一些棋子,其中第 \(i\) 个点放置了 \(a_i\) 个棋子.接下来,从 Yopilla 开始操作,双方轮流操作,谁不能操作谁输.每次的操作是:当前操作方选定一个有棋子的点 \(x\) ,然后选择至少一个点 \(x\) 上的棋子,然后把这些棋子全都移动到点 \(x / prime\)上,其中 \(p…
题目背景 Roy和October两人在玩一个取石子的游戏. 题目描述 游戏规则是这样的:共有n个石子,两人每次都只能取pk 个(p为质数,k为自然数,且pk小于等于当前剩余石子数),谁取走最后一个石子,谁就赢了. 现在October先取,问她有没有必胜策略. 若她有必胜策略,输出一行"October wins!":否则输出一行"Roy wins!". 输入输出格式 输入格式: 第一行一个正整数T,表示测试点组数. 第2行~第(T+1)行,一行一个正整数n,表示石子个…
P4018 Roy&October之取石子 题目背景 Roy和October两人在玩一个取石子的游戏. 题目描述 游戏规则是这样的:共有n个石子,两人每次都只能取p^kpk个(p为质数,k为自然数,且p^kpk小于等于当前剩余石子数),谁取走最后一个石子,谁就赢了. 现在October先取,问她有没有必胜策略. 若她有必胜策略,输出一行"October wins!":否则输出一行"Roy wins!". 输入输出格式 输入格式: 第一行一个正整数T,表示测试…
题目背景 Roy和October两人在玩一个取石子的游戏. 题目描述 游戏规则是这样的:共有n个石子,两人每次都只能取 p^kpk 个(p为质数,k为自然数,且 p^kpk 小于等于当前剩余石子数),谁取走最后一个石子,谁就赢了. 现在October先取,问她有没有必胜策略. 若她有必胜策略,输出一行"October wins!":否则输出一行"Roy wins!". 输入输出格式 输入格式: 第一行一个正整数T,表示测试点组数. 第2行~第(T+1)行,一行一个正…
题目背景 \(Roy\)和\(October\)两人在玩一个取石子的游戏. 题目描述 游戏规则是这样的:共有\(n\)个石子,两人每次都只能取\(p^k\)个(\(p\)为质数,\(k\)为自然数,且\(p^k\)小于等于当前剩余石子数),谁取走最后一个石子,谁就赢了. 现在\(October\)先取,问她有没有必胜策略. 若她有必胜策略,输出一行"\(October wins!\)":否则输出一行"\(Roy wins!\)". 输入输出格式 输入格式: 第一行一…
题意:给定一堆石子,每个人最多取前一个人取石子数的2被,最少取一个,最后取石子的为赢家,求赢家. 思路:斐波那契博弈,这个题的证明过程太精彩了! 一个重要的定理:任何正整数都可以表示为若干个不连续的斐波那契数的和. 一.归纳法证明斐波那契数列是必败点 为了方便,我们将n记为f[i]. 1.当i=2时,先手只能取1颗,显然必败,结论成立. 2.假设当i<=k时,结论成立. 则当i=k+1时,f[i] = f[k]+f[k-1]. 则我们可以把这一堆石子看成两堆,简称k堆和k-1堆. (一定可以看成…