তিনটি সংখ্যা x, y, z দেওয়া আছে। একটি রিভিউ সাইটে x জন আপভোট দেবে, y জন ডাউনভোট দেবে, আর z জন ভোট দেবে কিন্তু আমরা জানি না তারা আপভোট দেবে নাকি ডাউনভোট। প্রতিটি ব্যক্তি সর্বোচ্চ একবার ভোট দিতে পারবে। আপভোট > ডাউনভোট হলে ফলাফল "+", ডাউনভোট > আপভোট হলে "-", অন্যথায় "0"। z জন অনিশ্চিত থাকায় ফলাফল অনিশ্চিত (?) হতে পারে যদি z-র ভোটের ভিন্ন ভিন্ন পরিস্থিতিতে ভিন্ন ফলাফল আসে। ফলাফল বা অনিশ্চিততা রিপোর্ট করতে হবে।
উদাহরণ
x=2, y=0, z=2 → আউটপুট: '?'
ব্যাখ্যা: ২ আপভোট আছে, বাকি ২ জন ডাউনভোট দিলে ০ হবে, আপভোট দিলে '+' হবে — তাই অনিশ্চিত।
সমাধানের ধাপসমূহ
if x > y + z: return "+" else if x + z < y: return "-" else if z == 0: return "0" else: return "?"
সি++ কোড উদাহরণ
#include <bits/stdc++.h>
using namespace std;
string solve(int x, int y, int z) {
if (x > y + z) return "+";
else if (x + z < y) return "-";
else if (!z) return "0";
else return "?";
}
int main() {
int x=2, y=0, z=2;
cout << solve(x, y, z) << endl;
}
ইনপুট
2, 0, 2
আউটপুট
?