একটি অ্যারে এবং দুজন খেলোয়ার X, Y দেওয়া আছে। X প্রথমে খেলে। X জিতবে যদি X এবং Y নির্বাচিত সংখ্যাগুলোর যোগফলের পরম পার্থক্য ৪-এর গুণফল হয়। নয় তবে Y জিতবে।
উদাহরণ
ইনপুট: a[] = {3, 6, 9, 12} → আউটপুট: X
X নির্বাচন: 3, 6 | Y নির্বাচন: 12, 9 → |3+6 - 12+9| = 12 (৪-এর গুণফল)
লজিক
প্রতিটি উপাদানকে ৪ দিয়ে ভাগ করলে বাকি ০, ১, ২, ৩ হয়। প্রতিটি বাকির ফ্রিকোয়েন্সি যদি জোড় হয়, তবে X জিতবে।
C++ প্রোগ্রাম উদাহরণ
#include <iostream>
using namespace std;
int playGame(int a[], int n) {
int count[4] = {0, 0, 0, 0};
for (int i = 0; i < n; i++) {
for (int j = 0; j < 4; j++) {
if (a[i] % 4 == j) count[j]++;
}
}
if (count[0] % 2 == 0 && count[1] % 2 == 0 &&
count[2] % 2 == 0 && count[3] % 2 == 0)
return 1; // X wins
else
return 2; // Y wins
}
int main() {
int a[] = {4, 8, 5, 9};
int n = sizeof(a) / sizeof(a[0]);
cout << "Game Started!\n";
if (playGame(a, n) == 1)
cout << "X wins the Game";
else
cout << "Y wins the Game";
return 0;
}
আউটপুট
Game Started! X wins the Game