題目鏈結
題目描述
alice 和 bob 在玩遊戲。
他們有 nn 堆石子,第 i 堆石子有 a_i個,保證初始時 ai ≤ ai + 1 (1≤ii > ai−1 (a0視為 0)的一堆石子,並從中取走乙個。誰最後不能取了誰輸。alice 先手,他們都使用最優策略,請判斷最後誰會取得勝利。
輸入格式
第一行乙個整數 n(1 ≤ n ≤ 100),表示石子堆數。
接下來一行 n 個數,第 i 個數為 ai (1≤ai ≤109 ),意義如上所述。
輸出格式
「alice」 或 「bob」,表示誰會贏。
輸入輸出樣例
輸入 #111
輸出 #1
alice
輸入 #212
輸出 #2
bob**:
#include
using
namespace std;
intmain()
if(sum %
2) cout <<
"alice"
;else cout <<
"bob"
;return0;
}
洛谷P5675 取石子遊戲
alice 和 bob 在玩乙個古老的遊戲。現在有若干堆石子,alice 和 bob 輪流取,每次可以選擇其中某一堆的石子中取出任意顆石子,但不能不取,誰先取完使得另乙個人不能取了算贏。現在場地上有 n 堆石子,編號為 1 至 n alice 很快發現了這個遊戲存在一些固定的策略。陰險的 alice...
洛谷 P1392 取數
題面 在做這道題前,先要會他的弱化版 實際一模一樣,只是愚蠢的洛谷評測級別差了一檔 睿智如姬無夜 弱化版 弱化版 實際只是把矩陣行數改成兩行而已 sol 先排序,後考慮乙個序列a 1 b 1 a 2 b 1 a 3 b 1 a n 1 b 1 a n b 1 顯然對於上乙個序列而言 a 1 b 1 ...
洛谷P1880 石子合併
描述 在乙個園形操場的四周擺放n堆石子,現要將石子有次序地合併成一堆.規定每次只能選相鄰的2堆合併成新的一堆,並將新的一堆的石子數,記為該次合併的得分。試設計出1個演算法,計算出將n堆石子合併成1堆的最小得分和最大得分.輸入格式 資料的第1行試正整數n,1 n 100,表示有n堆石子.第2行有n個數...