POJ 2484 A Funny Game 博弈思想:複製對手操作
傳送門
這一題如果先手不能取完的話,後手一定可以通過取 1 個或者 2 個把局勢變成兩個對稱的局面,後面每一步都可以複製對方的操作,最終自己勝利。
#include <bits/stdc++.h>
using namespace std;
int main() {
int n;
while (cin >> n && n) {
if (n == 1 || n == 2)
cout << "Alice" << endl;
else
cout << "Bob" << endll
}
return 0;
}
相關推薦
POJ 2484 A Funny Game 博弈思想:複製對手操作
傳送門 這一題如果先手不能取完的話,後手一定可以通過取 1 個或者 2 個把局勢變成兩個對稱的局面,後面每一步都可以複製對方的操作,最終自己勝利。 #include <bits/stdc++.h> using namespace std; int main() { in
POJ 2484 A Funny Game(智商博弈)
src search 證明 ear 奇數 mem output pos 博弈 Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 6397 Accepted: 397
poj 2484 A Funny Game (簡單博弈)
題目連結:poj 2484 題意:給出n個順時針排列的n枚硬幣,每次只能取一個或者取相鄰的兩枚,Alice先取,問:誰取走最後一枚硬幣? 題解:這題很gou,看看程式碼你就知道了。 ///當n>=3時,Alice先拿,會把環拆成一條鏈,假如剩下奇數個硬幣數, ///那麼Bob只
POJ 2484 - A Funny Game(博弈)
題目連結 https://cn.vjudge.net/problem/POJ-2484 【題意】 n枚硬幣圍成一圈,Alice和Bob輪流取,每次取一枚或連續的兩枚。硬幣取走之後留下空位,相隔空位的硬幣是不連續的。Alice先取,取走最後一枚硬幣的一方獲勝。輸入n,當雙方都採取最優策略時
poj 2484 A Funny Game
poj spa 是個 data != while code pri urn 題目:http://poj.org/problem?id=2484 一,題意: n個硬幣圍成一個圈,Alice與Bob輪流從圈中取硬幣。每次能夠取一枚或者連續的兩枚。 硬幣取走後留下的
每天一道博弈論之“A funny game”(poj 2484)
log tar 硬幣 -s 獨立遊戲 div size 狀態 http 題意: n枚硬幣排成一個環,操作為可以選擇相鄰的兩個取走(相鄰指的是最開始相鄰,即不會自動補成環)。問先手勝還是後手勝。 題解: 首先我們考慮1和2,則明顯是先手必勝。
poj 2505 A multiplication game (類似於遞推思想和博弈)
題目連結:poj 2505 題意:Stan and Ollie 兩人玩遊戲,Stan先手,一開始 P=1,每次玩家可以在數字 [ 2 , 9 ] 範圍內選擇一個數與p相乘,當P>=n時,此時的某玩家獲勝。 題解:我們可以這樣思考,首先我們先設 X,滿足 X*9&g
POJ2599 A funny game (圖博弈)
dfs track ems put std rep int layer 最小 題目鏈接:傳送門 題意: 給定一個圖,兩個人從起點出發,輪流開飛機。當離開這個點後這個點 就不能使用了。假設輪到誰了誰不能飛了就輸了。 必敗狀態非常好找,當一個人在位置s的時候
博弈——poj 2505 A multiplication game
A multiplication game #include<iostream> #include<algorithm> #include<cstring> #include<cmath> #include<cstdio
A Funny Game POJ
傳送門 題意:n枚硬幣排成一個圈,ALICE和BOB輪流從中取一枚或者兩枚硬幣,不過,取兩枚時,所取的兩枚硬幣必須是連續的。硬幣取走後留下空位,相隔空位的硬幣視為不連續的。ALICE開始先取,取走最後一枚硬幣的一方獲勝。當雙方都採取最有策略時,誰會獲勝? 不好解釋,先附上
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的數,直
POJ2505 A multiplication game(博弈)
names fine eof 一個 fin sla sin 是否 long 題意 開始時$p = 1$,每次可以乘$2 - 9$,第一個使得$p \geqslant n$的人贏 問先手是否必勝 $1 <n <4294967295$ Sol 認真的推理一
poj 2425 A Chess Game (SG函式)
題目連結:poj 2425 題意:題目會給出一個有向無環圖,對於某個棋子,可以將它移動到其後繼棋子的任意一個位置,一個位置可以放多個棋子。 給出n個點,從0到n-1,接著n行,每行開始有Xi,代表第i個點後繼連線點有Xi個,分別是......。 緊接著有多組詢問,每組詢問的M代表有哪
POJ-2505 A multiplication game
題意: 給定一個數n (1 < n < 4294967295)從1開始, 可以乘以 【2, 9】中的任意一個數字, 最先乘法運算後最先大於等於n的那個人勝利。 分析: 博弈問題一般
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 1740 A New Stone Game(博弈)題解
const 證明 one int ios scan space return i++ 題意:有n個石子堆,每一個都可以輪流做如下操作:選一個石堆,移除至少1個石子,然後可以把這堆石子隨便拿幾次,隨便放到任意的其他石子數不為0的石子堆,也可以不拿。不能操作敗。 思路:我們先來
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 對應的局