Nim 的改進賽局是一個陣列的最佳化賽局。遊戲根據起始玩家和最佳移動來預測獲勝者。
#遊戲邏輯 - 在遊戲中,我們得到一個包含元素的陣列{}。通常有兩個玩家玩遊戲,即玩家 1 和玩家 2。兩者的目的都是確保從數組中刪除它們的所有數字。現在,玩家1必須刪除所有可被3整除的數字,玩家2必須刪除所有可被5整除的數字。目標是確保他們以最佳方式刪除所有元素並找到獲勝者。
##範例Array : {1,5, 75,2,65,7,25,6} Winner : playerB. A removes 75 -> B removes 5 -> A removes 6 -> B removes 65 -> No moves for A, B wins.
#include <bits/stdc++.h> using namespace std; int main() { int arr[] = {1,5, 75,2,65,7,25,6}; int n = sizeof(arr) / sizeof(arr[0]); int movesA = 0, movesB = 0, movesBoth = 0; for (int i = 0; i < n; i++) { if (arr[i] % 3 == 0 && arr[i] % 5 == 0) movesBoth++; else if (arr[i] % 3 == 0) movesA++; else if (arr[i] % 5 == 0) movesB++; } if (movesBoth == 0) { if (movesA > movesB) cout<<"Player 1 is the Winner"; cout<<"Player 2 is the Winner"; } if (movesA + 1 > movesB) cout<<"Player 1 is the Winner"; cout<<"Player 2 is the Winner"; ; return 0; }
Player 2 is the Winner
以上是一個用C語言修改過的Nim遊戲?的詳細內容。更多資訊請關注PHP中文網其他相關文章!