একটি দুই খেলোয়াড়ের গেমে n রাউন্ড আছে। প্রতিটি রাউন্ডের স্কোর 'scores' আরে দেওয়া আছে যেখানে প্রতিটি এলিমেন্ট {P1 Score, P2 Score}। যেই খেলোয়াড়ের স্কোর বেশি সে রাউন্ডটি জিতবে। বেশি রাউন্ড जीतলে গেম জিতবে, সমান হলে ড্রই থাকবে। विजয়ী কে তা বের করতে হবে।
সমাধানের ধাপসমূহ
প্রতিটি রাউন্ডের জন্য: P1 জিতলে +1, P2 জিতলে -1, ড্রই হলে ০ যোগ করুন। সর্বোচ্চ স্কোরের চেয়ে বড় হলে P1, ছোট হলে P2, সমান হলে "Draw" রিটার্ন করুন।
উদাহরণ
#include <bits/stdc++.h>
using namespace std;
string solve(int n, vector<pair<int, int>> scores) {
int res = 0;
while(n--) {
int a = scores[n].first;
int b = scores[n].second;
res += (a > b ? 1 : (a < b ? -1 : 0));
}
return res > 0 ? "P1" : (res < 0 ? "P2" : "Draw");
}
int main() {
int n = 4;
vector<pair<int, int>> scores = {{4, 3}, {3, 2}, {5, 6}, {2,5}};
cout << solve(n, scores);
return 0;
}
ইনপুট
4, {{4, 3}, {3, 2}, {5, 6}, {2, 5}}
আউটপুট
Draw
ব্যাখ্যা
রাউন্ড ১: P1 জিতল (+1), রাউন্ড ২: P1 জিতল (+1), রাউন্ড ৩: P2 জিতল (-1), রাউন্ড ৪: P2 জিতল (-1)। মোট = ০, তাই Draw।