51Nod 1069 Nim遊戲 nim博弈)

2021-08-21 18:49:28 字數 728 閱讀 3788

1069 nim遊戲

基準時間限制:1 秒 空間限制:131072 kb 分值: 0 難度:基礎題

有n堆石子。a b兩個人輪流拿,a先拿。每次只能從一堆中取若干個,可將一堆全取走,但不可不取,拿到最後1顆石子的人獲勝。假設a b都非常聰明,拿石子的過程中不會出現失誤。給出n及每堆石子的數量,問最後誰能贏得比賽。

例如:3堆石子,每堆1顆。a拿1顆,b拿1顆,此時還剩1堆,所以a可以拿到最後1顆石子。

input

第1行:乙個數n,表示有n堆石子。(1 <= n <= 1000)

第2 - n + 1行:n堆石子的數量。(1 <= a[i] <= 10^9)

output

如果a獲勝輸出a,如果b獲勝輸出b。
input示例

311

1

output示例

a
計算所有堆的異或值,為0則後手贏,否則前手贏;

#include #include #include #include #include #include #include #include #include #include using namespace std;

typedef long long ll;

int main()

cout << (x==0?"b":"a") << endl;

return 0;

}

51 nod 1069 Nim遊戲(博弈)

1069 nim遊戲 基準時間限制 1 秒 空間限制 131072 kb 分值 0 難度 基礎題 有n堆石子。a b兩個人輪流拿,a先拿。每次只能從一堆中取若干個,可將一堆全取走,但不可不取,拿到最後1顆石子的人獲勝。假設a b都非常聰明,拿石子的過程中不會出現失誤。給出n及每堆石子的數量,問最後誰...

51nod 1069 Nim遊戲(博弈)

1069 nim遊戲 基準時間限制 1 秒 空間限制 131072 kb 分值 0 難度 基礎題 有n堆石子。a b兩個人輪流拿,a先拿。每次只能從一堆中取若干個,可將一堆全取走,但不可不取,拿到最後1顆石子的人獲勝。假設a b都非常聰明,拿石子的過程中不會出現失誤。給出n及每堆石子的數量,問最後誰...

1069 Nim遊戲(51NOD基礎)

1069 nim遊戲 51nod基礎 基準時間限制 1 秒 空間限制 131072 kb 分值 0 難度 基礎題 有n堆石子。a b兩個人輪流拿,a先拿。每次只能從一堆中取若干個,可將一堆全取走,但不可不取,拿到最後1顆石子的人獲勝。假設a b都非常聰明,拿石子的過程中不會出現失誤。給出n及每堆石子...