POJ2505 A multiplication game[博弈论]

A multiplication game

Time Limit: 1000MS   Memory Limit: 65536K
Total Submissions: 6028   Accepted: 3013

Description

Stan and Ollie play the game of multiplication by multiplying an integer p by one of the numbers 2 to 9. Stan always starts with p = 1, does his multiplication, then Ollie multiplies the number, then Stan and so on. Before a game starts, they draw an integer 1 < n < 4294967295 and the winner is who first reaches p >= n.

Input

Each line of input contains one integer number n.

Output

For each line of input output one line either 
Stan wins. 
or 
Ollie wins. 
assuming that both of them play perfectly.

Sample Input

162
17
34012226

Sample Output

Stan wins.
Ollie wins.
Stan wins.

Source

Waterloo local 2001.09.22


手算一下吧

0~9 stan

10~9*2 ollie  //2是Stan,他要尽量阻止Ollie取到n;9是Ollie,他要尽量大来取到n

19~9*2*9 stan

以此类推

可以直接用n不断/18

注意double n

#include<cstdio>
double n;
int main(){
    while(scanf("%lf",&n)!=EOF){
        while(n>18) n/=18;
        if(n<=9) puts("Stan wins.");
        else puts("Ollie wins.");
    }
}
时间: 2024-10-15 06:13:32

POJ2505 A multiplication game[博弈论]的相关文章

POJ2505 A multiplication game 博弈论 找规律

http://poj.org/problem?id=2505 感觉博弈论只有找规律的印象已经在我心中埋下了种子... 题目大意:两个人轮流玩游戏,Stan先手,数字 p从1开始,Stan乘以一个2-9的数,然后Ollie再乘以一个2-9的数,直到谁先将p乘到p>=n时那个人就赢了,而且轮到某人时,某人必须乘以2-9的一个数. 题目大意来源http://blog.csdn.net/jc514984625/article/details/71157698 因为谷歌翻译太难懂了,所以总是找题解找题目大

「POJ2505」A multiplication game [博弈论]

题目链接:http://poj.org/problem?id=2505 题目大意: 两个人轮流玩游戏,Stan先手,数字 p从1开始,Stan乘以一个2-9的数,然后Ollie再乘以一个2-9的数,直到谁先将p乘到p>=n时那个人就赢了,而且轮到某人时,某人必须乘以2-9的一个数. 解题思路: 这是一道博弈论的题目.不过这道题并没有用SG函数相关的知识.首先我们可以很快判断区间[2,9]必定是先手胜然后紧接着是区间[10,18]区间是后手胜然后是什么呢?[18,??]我们可以这样来理解:我们可以

HDU 1517 A Multiplication Game(博弈论)

题目地址:HDU 1517 NP状态转换. 可以把题目的向上乘变成向下除.这样1是终结状态,设1的时候为必败点. 根据所有能一步到达必败点的点是必胜点,所以[x,x*9]必胜点:根据只能到达必胜点的点是必败点,所以[x*9+1,x*9*2]是必败点. 然后求解. 代码如下: #include <iostream> #include <cstdio> #include <string> #include <cstring> #include <stdli

POJ2505 A multiplication game(博弈)

题意 开始时$p = 1$,每次可以乘$2 - 9$,第一个使得$p \geqslant n$的人赢 问先手是否必胜 $1 <n <4294967295$ Sol 认真的推理一波. 若当前的数为$\frac{n}{9} \leqslant x \leqslant n$,则先手必胜 若当前的数为$\frac{n}{18} \leqslant x \leqslant \frac{n}{9}$,则先手必败 若当前的数为$\frac{n}{18 * 9} \leqslant x \leqslant \

博弈论类题目小结——转载

出处http://blog.csdn.net/ACM_cxlove?viewmode=contents    by---cxlove 首先当然要献上一些非常好的学习资料: 基础博弈的小结:http://blog.csdn.net/acm_cxlove/article/details/7854530 经典翻硬币游戏小结:http://blog.csdn.net/acm_cxlove/article/details/7854534 经典的删边游戏小结:http://blog.csdn.net/acm

poj分类解题报告索引

图论 图论解题报告索引 DFS poj1321 - 棋盘问题 poj1416 - Shredding Company poj2676 - Sudoku poj2488 - A Knight's Journey poj1724 - ROADS(邻接表+DFS) BFS poj3278 - Catch That Cow(空间BFS) poj2251 - Dungeon Master(空间BFS) poj3414 - Pots poj1915 - Knight Moves poj3126 - Prim

【博弈论】Multiplication Game

题目描述 Alice and Bob are in their class doing drills on multiplication and division. They quickly get bored and instead decide to play a game they invented.The game starts with a target integer N≥2, and an integer M = 1. Alice and Bob take alternate tu

Multiplication Game(博弈论)

Description Alice and Bob are in their class doing drills on multiplication and division. They quickly get bored and instead decide to play a game they invented. The game starts with a target integer N≥2N≥2 , and an integer M=1M=1. Alice and Bob take

Part.4【博弈论】

---恢复内容开始--- 不要问我为什么突然跳到Part.4,我懒得解释. 在蔡大神的论文+讲解和HZW的题库下,自己大概是明白什么是博弈论的皮毛了吧. 先说SG定理吧. 对于游戏中的状态,我们给每个状态定义一个必胜态和必败态.区别在于前者可以通过一次操作到达必败态,但后者无法做到(后者在一次操作后所能到达的状态全部都为必胜态) 接着引进SG函数,每个状态都有一个SG值,这个值由它所能到达的状态的SG值决定.(这里的所能到达的状态指的是经过一次操作能到达的状态,下同) SG值有以下性质: SG值