A Funny Game POJ
題意:n枚硬幣排成一個圈,ALICE和BOB輪流從中取一枚或者兩枚硬幣,不過,取兩枚時,所取的兩枚硬幣必須是連續的。硬幣取走後留下空位,相隔空位的硬幣視為不連續的。ALICE開始先取,取走最後一枚硬幣的一方獲勝。當雙方都採取最有策略時,誰會獲勝?
不好解釋,先附上程式碼:
#include<iostream> #include<cstdio> using namespace std; int main() { int n; while(scanf("%d",&n)!=EOF&&n){ if(n<=2){ printf("Alice\n"); }else{ printf("Bob\n"); } } return 0; }
相關推薦
A Funny Game POJ
傳送門 題意:n枚硬幣排成一個圈,ALICE和BOB輪流從中取一枚或者兩枚硬幣,不過,取兩枚時,所取的兩枚硬幣必須是連續的。硬幣取走後留下空位,相隔空位的硬幣視為不連續的。ALICE開始先取,取走最後一枚硬幣的一方獲勝。當雙方都採取最有策略時,誰會獲勝? 不好解釋,先附上
poj 2484 A Funny Game
poj spa 是個 data != while code pri urn 題目:http://poj.org/problem?id=2484 一,題意: n個硬幣圍成一個圈,Alice與Bob輪流從圈中取硬幣。每次能夠取一枚或者連續的兩枚。 硬幣取走後留下的
POJ 2484 A Funny Game(智商博弈)
src search 證明 ear 奇數 mem output pos 博弈 Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 6397 Accepted: 397
每天一道博弈論之“A funny game”(poj 2484)
log tar 硬幣 -s 獨立遊戲 div size 狀態 http 題意: n枚硬幣排成一個環,操作為可以選擇相鄰的兩個取走(相鄰指的是最開始相鄰,即不會自動補成環)。問先手勝還是後手勝。 題解: 首先我們考慮1和2,則明顯是先手必勝。
poj 2484 A Funny Game (簡單博弈)
題目連結:poj 2484 題意:給出n個順時針排列的n枚硬幣,每次只能取一個或者取相鄰的兩枚,Alice先取,問:誰取走最後一枚硬幣? 題解:這題很gou,看看程式碼你就知道了。 ///當n>=3時,Alice先拿,會把環拆成一條鏈,假如剩下奇數個硬幣數, ///那麼Bob只
POJ 2484 A Funny Game 博弈思想:複製對手操作
傳送門 這一題如果先手不能取完的話,後手一定可以通過取 1 個或者 2 個把局勢變成兩個對稱的局面,後面每一步都可以複製對方的操作,最終自己勝利。 #include <bits/stdc++.h> using namespace std; int main() { in
POJ 2484 - A Funny Game(博弈)
題目連結 https://cn.vjudge.net/problem/POJ-2484 【題意】 n枚硬幣圍成一圈,Alice和Bob輪流取,每次取一枚或連續的兩枚。硬幣取走之後留下空位,相隔空位的硬幣是不連續的。Alice先取,取走最後一枚硬幣的一方獲勝。輸入n,當雙方都採取最優策略時
POJ2599 A funny game (圖博弈)
dfs track ems put std rep int layer 最小 題目鏈接:傳送門 題意: 給定一個圖,兩個人從起點出發,輪流開飛機。當離開這個點後這個點 就不能使用了。假設輪到誰了誰不能飛了就輸了。 必敗狀態非常好找,當一個人在位置s的時候
A Chess Game POJ - 2425
bsp nbsp star tun -a dir ide span sca Let‘s design a new chess game. There are N positions to hold M chesses in this game. Multiple chess
A Chess Game POJ - 2425(SG函式)
POJ 2425 題意: 一個有向無環圖,在若干點上有若干棋子,兩人輪流移動棋子,每次只能將一個棋子移動一步,當無棋子可移動時輸,即移動最後一枚棋子者勝; 思路: 假設只有一枚棋子,那麼對於一個點的勝負局面其實就是其SG值; 多枚棋子的勝負局面就是每個點的SG值異或和; 現在就是要求每個
2599 A funny game NP狀態定理
題目:有一棵無向樹,從某個結點出發,兩個人輪流移動,走過的結點不能再走,不能移動的人輸。判斷先手必勝還是先手必敗,如果先手必勝,輸出必勝到達的節點。 思路:利用NP狀態定理,把起點的SG值算出來。 程式碼: #pragma comment(linker, "/STACK:1
uva 1378 - A Funny Stone Game sg博弈
1.0 mat cto i+1 clas typedef article 移動 post 題意:David 玩一個石子遊戲。遊戲中,有n堆石子,被編號為0..n-1。兩名玩家輪流取石子。 每一輪遊戲。每名玩家選取3堆石子i,j,k(i<j,j<=k,且至
POJ 2425 A Chess Game 博弈論 sg函數
數組 scanf 博弈 break struct itl clu using b- http://poj.org/problem?id=2425 典型的sg函數,建圖搜sg函數預處理之後直接求每次遊戲的異或和。仍然是因為看不懂題目卡了好久。 這道題大概有兩個坑, 1.是搜索
poj 2505 A multiplication game
sin turn 必須 col href 開始 esp 得到 style A multiplication game POJ - 2505 題目大意:兩個人輪流玩遊戲,Stan先手,數字 p從1開始,Stan乘以一個2-9的數,然後Ollie再乘以一個2-9的數,直
poj 2505 A multiplication game (類似於遞推思想和博弈)
題目連結:poj 2505 題意:Stan and Ollie 兩人玩遊戲,Stan先手,一開始 P=1,每次玩家可以在數字 [ 2 , 9 ] 範圍內選擇一個數與p相乘,當P>=n時,此時的某玩家獲勝。 題解:我們可以這樣思考,首先我們先設 X,滿足 X*9&g
博弈——poj 2505 A multiplication game
A multiplication game #include<iostream> #include<algorithm> #include<cstring> #include<cmath> #include<cstdio
poj 2425 A Chess Game (SG函式)
題目連結:poj 2425 題意:題目會給出一個有向無環圖,對於某個棋子,可以將它移動到其後繼棋子的任意一個位置,一個位置可以放多個棋子。 給出n個點,從0到n-1,接著n行,每行開始有Xi,代表第i個點後繼連線點有Xi個,分別是......。 緊接著有多組詢問,每組詢問的M代表有哪
Uva 1378 A Funny Stone Game (ACM ICPC 2006 Asia Regional Contest Beijing A Funny Stone Game)Nim 博弈
傳送門 王曉珂的題解乍一看非常難理解,且聽我慢慢解釋。 首先考慮這樣一個子問題: 當前棋子堆的編號為 m , 要求你把這個堆,並且放入兩堆編號分別小於 m 的棋子, 這裡分別計為 i, j (i, j < m) 那麼這種情況的 SG 是怎麼求的呢? 設當前編號 m 對應的局
POJ-2505 A multiplication game
題意: 給定一個數n (1 < n < 4294967295)從1開始, 可以乘以 【2, 9】中的任意一個數字, 最先乘法運算後最先大於等於n的那個人勝利。 分析: 博弈問題一般
百練2505:A multiplication game
unsigned stdio.h multi ios ica ret reg cti std 傳送門:http://bailian.openjudge.cn/practice/2505/ 【題解】 我們找找規律: 1~9顯然是Stan wins. 10~18是Ollie w