এই সমস্যাতে, দুটি পূর্ণসংখ্যা N এবং M দেওয়া আছে। একটি বৃত্তে N জন মানুষ দাঁড়িয়ে আছে। M একটি ব্যক্তির পজিশন নির্দেশ করে। আমাদের কাজ হলো M-র বিপরীত পাশে থাকা ব্যক্তির পজিশন প্রিন্ট করা।
উদাহরণ:
ইনপুট - N = 6, M = 3
আউটপুট - 6
ব্যাখ্যা -

সমাধানের জন্য, দুটি কেস হবে: একটি যদি পজিশন আধা পজিশনের চেয়ে বড় হয় (দ্বিতীয় অর্ধেক), তবে বিপরীত পজিশন হবে প্রথম অর্ধেকে এবং বিপরীতভাবে।
গাণিতিকভাবে সূত্র তৈরি করি:
কেস ১ - যদি m > n/2 হয়, তবে বিপরীত ব্যক্তির পজিশন = m - (n/2)
কেস ২ - যদি m ≤ n/2 হয়, তবে বিপরীত ব্যক্তির পজিশন = m + (n/2)
উদাহরণ
সমাধানের প্রোগ্রাম:
#include <iostream>
using namespace std;
void printOppositePosition(int n, int m) {
int pos;
if (m > (n / 2))
pos = (m - (n / 2));
else
pos = (m + (n / 2));
cout << pos;
}
int main() {
int N = 8, M = 4;
cout << "The position of person opposite to person at position " << M << " when " << N << " people are standing in a circle is ";
printOppositePosition(N, M);
return 0;
} আউটপুট
The position of person opposite to person at position 4 when 8 people are standing in a circle is 8