এই গেমে দুজন খেলোয়ার X এবং Y রয়েছে। উভয়ই به jauh স্মার্টলি খেলে। X প্রথমে খেলা শুরু করে। বিজয়ী কে হবে তা প্রিডিক্ট করতে হবে।
গেমের নিয়ম
দুইটি পাইল আছে N এবং M সংখ্যক কয়েনসহ। একজন খেলোয়ার যেকোনো একটি পাইল বেছে নেবে এবং সেটিকে দুভাগে ভাগ করবে। এটি চলতে থাকবে যতক্ষণ না কেউ আর ভাগ করতে না পারে।
উদাহরণ
ইনপুট: M = 2, N = 2 → আউটপুট: X
ব্যাখ্যা: X প্রথমে M পাইল বেছে নিয়ে দুভাগ করে দেয়। এখন প্রতিটি পাইলে ১টি কয়েন। Y-এর কোন মুভ নেই। X জয়ী।
লজিক
X জয়ী হয় যদি যেকোনো একটি পাইলে জোড় সংখ্যক কয়েন থাকে। অন্যথায় Y জয়ী।
C++ প্রোগ্রাম উদাহরণ
#include <iostream>
using namespace std;
int isXWinner(int M, int N) {
if (M % 2 == 0 || N % 2 == 0) return 1;
return 0;
}
int main() {
int M = 1, N = 2;
cout << "Game Starts!\n";
if (isXWinner(M, N))
cout << "Player X is the Winner";
else
cout << "Player Y is the Winner";
return 0;
}
আউটপুট
Game Starts! Player X is the Winner