UVA 12293 - Box Game(博弈)
UVA 12293 - Box Game
題目鏈接
題意:兩個盒子,一開始一個盒子有n個球。一個僅僅有1個球,每次把球少的盒子中球消掉,把多的拿一些球給這個盒子。最後不能操作的輸(球不能少於1個),Alice先手,問誰贏
思路:博弈。題目事實上能夠轉化為。給定一個n。每次把降低1到n/2的數字,最後誰是1誰就輸了,那麽能夠去遞推前幾項找個規律,或者推理,都能夠發現僅僅要是2^i - 1的數字Bob就贏,否則Alice贏
代碼:
#include <stdio.h> #include <string.h> long long n; int main() { while (~scanf("%lld", &n) && n) { if (n&(n + 1)) printf("Alice\n"); else printf("Bob\n"); } return 0; }
UVA 12293 - Box Game(博弈)
相關推薦
UVA 12293 - Box Game(博弈)
can top ice con receive uva eight word-wrap data UVA 12293 - Box Game 題目鏈接 題意:兩個盒子,一開始一個盒子有n個球。一個僅僅有1個球,每次把球少的盒子中球消掉,把多的拿一些球給
C UVA 12293 Box Game
There are two identical boxes. One of them contains n balls, while the other box contains one ball. Alice and Bob invented a game with the bo
B. Sleepy Game 博弈搜索
spa body 不能 std 16px clas ces for .com 題意:給一個有向圖和起點,然後只有一名選手,這名選手可以隨意挪動棋子,最終不能動的時候走過的邊為奇數邊為Win並輸出路徑,否則如果有環輸出Draw,否則輸出Lose; 題目鏈接 知道狀態數最多
[POJ1678] I Love this Game! - 博弈,DP
memory Go lin set 一個 pro nta first exactly I Love this Game! Time Limit: 1000MS Memory Limit: 10000K Total Submissions:
多校 HDU-6312 Game (博弈)
集合 pan pid 都是 alice .cn 不知道 鏈接 span 題目鏈接: http://acm.hdu.edu.cn/showproblem.php?pid=6312 Alice和Bob做一個博弈遊戲, 一個集合中的數為1 到 n,一個人每輪可以從中移走一個數
POJ2505 A multiplication game(博弈)
names fine eof 一個 fin sla sin 是否 long 題意 開始時$p = 1$,每次可以乘$2 - 9$,第一個使得$p \geqslant n$的人贏 問先手是否必勝 $1 <n <4294967295$ Sol 認真的推理一
BZOJ1443-[JSOI2009]遊戲Game-博弈+二分圖必匹配點
寫在前面 並沒有什麼想說的,但是要保持格式=w= 題目 BZOJ1443傳送門 看題可戳傳送門 解法 其實和 BZOJ2463 思路差不多 在棋盤上走,不染個色就虧了對吧 =w= (思路來著Menci) 那麼我們黑白染色一下,然後跑有效格子的最大
POJ 2484 A Funny Game 博弈思想:複製對手操作
傳送門 這一題如果先手不能取完的話,後手一定可以通過取 1 個或者 2 個把局勢變成兩個對稱的局面,後面每一步都可以複製對方的操作,最終自己勝利。 #include <bits/stdc++.h> using namespace std; int main() { in
HDU 2147 kiki's game 博弈找規律
傳送門 這個自己畫一下 NP 圖看看就知道,只有行列都是奇數的時候才會輸,否則都是贏 #include <bits/stdc++.h> using namespace std; int main() { int n, m; while (cin >> n
Uva-11859 Division Game
題解詳見劉汝佳--訓練指南P136寫的超級詳細了,在此貼個預處理程式碼。 #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> using n
UVa 1587 Box 盒子
這道題的連結:https://vjudge.net/problem/UVALive-3214 給定6個矩形的長和寬wi與hi(1<=wi, hi<=1000), 判斷它們能否構成長方體的6個面 Sample Input 1345 2584 2584 683 2584 1345 683
poj 2234 Matches Game || 博弈
#include<cstdio> int main() { int n,t,res; while(~scanf("%d",&n)) { scanf("%d",&res); for(int i=1;i<n;i+
codeforces C. Permutation Game(博弈)
題目連結 題目大意:有n個位置,每個位置有一個值a[i]。兩個人輪流玩遊戲。移動小球,小球假如當前在i位置,規則:找到一個位置j滿足a[j]>a[i]且abs(j-i)%a[i]=0,這樣就可以把球從i位置放到j位置。是不能移動小球的為loser。求當球初始位置在1~
UVA 1292 Strategic game(樹形DP)
題目連結 題意 一棵樹,要放置哨兵(只能放在節點上),求最少放置哨兵保證能監視到所有的邊。 即最小點覆蓋 思路 樹形DP入門,記得之前第一次遇到這題是用二分圖求最小點覆蓋過的,學了樹形DP思想後再
hdu3389 Game-----博弈想法題 難
Game Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 133 Accepted Submission(
poj 樓天成的男人八題系列 A New Stone Game 博弈問題
第一,只有一堆x,第一個人直接全部取走就勝利了.(顯然x,y,y的情況也是第一人勝,所以忽略相等的石頭); 第二,x,y的形式(這裡不妨假設遞增,下同).第一人從第二堆中取走(y-x)個石頭,這樣兩
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,且至
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 對應的局
UVa 10891 - Game of Sum 動態規劃,博弈 難度: 0
動態規劃 closed org line 時間 alt algo hid queue 題目 https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_pro