কম্পিউটার টিউটোরিয়াল

Nim গেম (একটি পাথর সরানো) विजেতা নির্ণয় (C++)


সমস্যা বিবরণ

Nim গেম-এ Nটি পাথর থাকে। দুজন খেলোয়াড় playerA এবং playerB-बারি বারি থেকে একটি পাথর তুলে। playerA প্রথমে শুরু করে। শেষ পাথর তুলে آنে যিনি জিতেন। বিজেতা কে তা বের করা।

উদাহরণ

ইনপুট: N = 6
আউটপুট: playerB
ব্যাখ্যা: ৬টি পাথর — playerA, playerB, playerA, playerB, playerA, playerB (শেষটি playerB তুলে)।

সমাধানের পদ্ধতি

প্যাট্রেন দেখা যায়: N বিজোড় হলে playerA জিতেন, N জোড় হলে playerB জিতেন।

প্রোগ্রাম উদাহরণ

#include <iostream>
using namespace std;

bool findGameofNimWinner(int N) {
    return (N % 2 != 0); // true = Player A, false = Player B
}

int main() {
    int N = 26;
    cout << "Nim গেমের বিজেতা: ";
    findGameofNimWinner(N) ? cout << "Player A" : cout << "Player B";
    return 0;
}

আউটপুট

Nim গেমের বিজেতা: Player B
  1. C++-এ এক ডিলিশন সহ সর্বোচ্চ সাবঅ্যারে সম

  2. C++-এ কয়েন গেমে বিজয়ী প্রিডিক্ট করা (Predict Winner in Coin Game)

  3. C++-এ রিপ্লেসমেন্টের মাধ্যমে খরচ ন্যূনতম করা

  4. C++-এ সাধারণ অ্যারে এক ডিফল্ট ভ্যালু দিয়ে ইনিশিয়ালাইজেশন