hdu3389 Game-----博弈想法題 難
Game
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 133 Accepted Submission(s): 90
1 3 4這三個位置無法移到其他位置。
每個位置移到下個位置後奇偶性改變,模3結果也有固定變化(0->0,1->2,2->1),比如模3為1的奇數可以移到模3為2的偶數也可以移到模3為1的奇數,但最終只可能移到模3為1的奇數,也就是1(因為1、3、4中沒有模3為2的),其他型別的數的最終位置也可如此得到。由於移到的最終位置是固定的,本身的奇偶性也是固定的,那麼移動步數的奇偶性也是固定的。
容易得出模6為0、2、5的位置移動步數為奇,其餘為偶。
也容易得出移動位置是偶數步的位置上的牌數是無關緊要的:因為不論對方將偶數步位置上的牌作如何操作,我都可以把他移動的牌再往後移動一步。也就是說偶數步上的位置的牌我可以保證兩個人對其的運算元是偶數次,從而不影響到奇數步位置上的牌的狀態。
那奇數步位置上的牌呢?臨時再來個無關緊要的結論:奇數步位置上的牌可以直接移到最終位置
一、如果直接把某一奇數步位置上的某些牌移到1、3、4這些終點位置,就相當於取石子游戲中從一堆石子裡取走一些石子。
二、如果把一些牌移到偶數步位置,之前說了偶數步位置上的牌可以無視的,我們也可以把它看作是從這堆石子裡取走了一些石子。
所以就是把奇數步位置上的異或起來就好了。
相關推薦
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)個石頭,這樣兩
2017-5-14 湘潭市賽 Longest Common Subsequence 想法題
pre ati 個數 離散 code output iterator n) ret Longest Common Subsequence Accepted : 7 Submit : 66 Time Limit : 3000 MS M
【插頭dp】CDOJ1690 這是一道比CCCC簡單題難的簡單題
eof pri mes main 一道 sizeof () brush mage 最裸的插頭dp,可參見大白書。 #include<cstdio> #include<cstring> using namespace std; #define
UVA 12293 - Box Game(博弈)
can top ice con receive uva eight word-wrap data UVA 12293 - Box Game 題目鏈接 題意:兩個盒子,一開始一個盒子有n個球。一個僅僅有1個球,每次把球少的盒子中球消掉,把多的拿一些球給
poj1753Flip Game【刷題計劃】
not osi ack accepted scrip flag notes ram white Flip Game Time Limit: 1000MS Memory Limit: 65536K Total Submissions:
B. Sleepy Game 博弈搜索
spa body 不能 std 16px clas ces for .com 題意:給一個有向圖和起點,然後只有一名選手,這名選手可以隨意挪動棋子,最終不能動的時候走過的邊為奇數邊為Win並輸出路徑,否則如果有環輸出Draw,否則輸出Lose; 題目鏈接 知道狀態數最多
HDU - 5818 Joint Stacks 想法題 關鍵
warn set mod swa war std ORC nbsp pos http://codeforces.com/problemset/problem/669/D 題意:n個數1~N圍成一個圈。q個操作包括操作1:輸入x, 所有數右移x。操作2:1,2位置上的數(sw
[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 認真的推理一
【CodeForces - 864A】Fair Game(水題)
Petya and Vasya decided to play a game. They have n cards (n is an even number). A single integer is written on each card. Before t
HDU3951 建立對稱局勢【博弈水題】
Coin Game After hh has learned how to play Nim game, he begins to try another coin game which seems much easier. The game goes like this
BZOJ1443-[JSOI2009]遊戲Game-博弈+二分圖必匹配點
寫在前面 並沒有什麼想說的,但是要保持格式=w= 題目 BZOJ1443傳送門 看題可戳傳送門 解法 其實和 BZOJ2463 思路差不多 在棋盤上走,不染個色就虧了對吧 =w= (思路來著Menci) 那麼我們黑白染色一下,然後跑有效格子的最大
Gym-101177B 遞迴想法題
題意:一串無限長的0,有m個操作(m<2e5),在每個x後面加一個y,最後一次查詢L--R的數字,(L,R<1e6) 思路:看起來非常複雜,實際上突破口在於L,R很小,雖然操作複雜,直接模擬會單次操作on,但是我們可以考慮一個一個字元構造,實際上就是一個遞迴的過程。具體方法可以大
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
hdu 5926 Mr. Frog’s Game(水題)
一個連連看遊戲,判斷第一次是否有可以消除的方塊。 6個for迴圈,分別判斷4個最外面的邊和裡面的相鄰的情況就行了 #pragma GCC optimize(2) #include<stdio.h> #include<algorithm>
Codeforces Round#519 D. Mysterious Crime【想法題】
【題意】:給你m個長度為n的排列,m<=10,n<=100000,讓你求有多少種不同的公共子串。 【題解】:就目前而言,如果是在多個字串中求不同的公共子串個數,還不是一個能在較低複雜度下就能解決的問題,所以這道題一定是有它自己特殊的地方:排列(permutaio