এই সমস্যায়, আমাদের N এবং M দুটি পূর্ণসংখ্যা দেওয়া হয়েছে। সেখানে একটি বৃত্ত রয়েছে এবং N লোকেরা তার উপর দাঁড়িয়ে আছে। M একজন ব্যক্তির অবস্থান নির্দেশ করে। আমাদের কাজ হল M.
এর বিপরীত ব্যক্তির অবস্থান প্রিন্ট করাসমস্যাটি বোঝার জন্য একটি উদাহরণ দেওয়া যাক,
ইনপুট৷ − N =6, M =3
আউটপুট − 6
ব্যাখ্যা −
এই সমস্যাটি সমাধান করার জন্য, দুটি ক্ষেত্রে থাকবে, একটি যদি অবস্থানটি অর্ধেক অবস্থানের (দ্বিতীয় অর্ধেক) থেকে বেশি হয়, বিপক্ষটি প্রথম অর্ধেক এবং বিপরীতটি হবে।
আসুন গাণিতিকভাবে এর জন্য একটি সূত্র তৈরি করি,
কেস 1 − যদি m> n/2 হয়, বিপরীত ব্যক্তির অবস্থান m - (n/2)
কেস 2 − যদি m =
আমাদের সমাধানের দৃষ্টান্ত দেখানোর জন্য প্রোগ্রাম,উদাহরণ
#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