Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Game of Nim - Chỉ được lấy 1 viên đá trong C++


Trong bài toán Game of Nim, cho số nguyên dương N đại diện cho đống đá và hai người chơi playerA và playerB. Nhiệm vụ là dự đoán người thắng cuộc.

Luật chơi

Mỗi người chỉ được lấy 1 viên đá mỗi lượt. PlayerA đi trước. Người lấy viên đá cuối cùng thắng.

Ví dụ minh họa

Input: N = 6 Output: playerB
Giải thích: 6 viên đá, luân phiên A-B-A-B-A-B → B thắng

Phương pháp giải

Quan sát quy luật: N lẻ → PlayerA thắng, N chẵn → PlayerB thắng.

Ví dụ chương trình

#include<iostream> 
using namespace std; 

bool findGameofNimWinner(int N){
    return (N % 2 != 0);
}

int main(){
    int N = 26;
    cout << "Người thắng Game of Nim là ";
    findGameofNimWinner(N) ? (cout << "Player A") : (cout << "Player B");
    return 0;
}

Kết quả

Người thắng Game of Nim là Player B