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的時候,說明總的堆數是偶數,並且兩個人每一輪拿的數量都是一樣的(異或,a^a=0,a^0=a);最終最後一次由b拿完,所以b贏.
#includeusing namespace std;
int main()
if(!ans)
cout<
else
cout<
return 0;
}
51Nod 1069 Nim遊戲 nim博弈)
1069 nim遊戲 基準時間限制 1 秒 空間限制 131072 kb 分值 0 難度 基礎題 有n堆石子。a b兩個人輪流拿,a先拿。每次只能從一堆中取若干個,可將一堆全取走,但不可不取,拿到最後1顆石子的人獲勝。假設a b都非常聰明,拿石子的過程中不會出現失誤。給出n及每堆石子的數量,問最後誰...
51 nod 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及每堆石子...