কম্পিউটার টিউটোরিয়াল

C++-এ একই সংখ্যক জাম্পে দুজন লোক কখনও মিলে কিনা তা খুঁজুন


এই সমস্যায়, আমাদের চারটি পূর্ণসংখ্যা দেওয়া আছে যা প্রতিটি ব্যক্তির শুরুর পয়েন্ট এবং জাম্পের দূরত্ব নির্দেশ করে। আমাদের কাজ হল জানা যে একই সংখ্যক জাম্পের পর দুজন লোক কখনও মিলে কিনা।

উদাহরণ দিয়ে সমস্যাটি বুঝি,

ইনপুট: p1 = 5, p2 = 9, j1 = 4, j2 = 2

আউটপুট: হ্যাঁ

ব্যাখ্যা:

প্রথম জাম্পের পর, p1 = 9, p2 = 11
দ্বিতীয় জাম্পের পর, p1 = 13, p2 = 13

সমাধানের পদ্ধতি:

কোনো পয়েন্টে মিলতে হলে দুজন লোকের জাম্পের দূরত্ব ভিন্ন হতে হবে। মিল সম্ভব কিনা তা যাচাই করার জন্য কিছু শর্ত পূরণ করতে হবে:

  • যদি p1 > p2 হয়, তবে j1, j2-এর চেয়ে ছোট হতে হবে।
  • এবং ((p2 - p1) % (j1 - j2)) == 0 হতে হবে।

তবেই মিল সম্ভব, অন্যথায় না।

সমাধান দর্শানোর প্রোগ্রাম,

উদাহরণ

#include <iostream> 
using namespace std; 

bool WillMeet(int p1, int j1, int p2, int j2){ 
    return ( (j1 > j2 && ( ((p2 - p1) % (j1 - j2)) == 0)) || 
             (j2 > j1 && ( ((p1 - p2) % (j2 - j1)) == 0)) ); 
} 

int main() { 
    int p1 = 5, j1 = 4, p2 = 9, j2 = 2; 
    if(WillMeet(p1, j1, p2, j2)) 
        cout << "Both will meet at some point"; 
    else 
        cout << "Both will not meet at any point"; 
    return 0; 
}

আউটপুট

Both will meet at some point

  1. C++-এ পূর্ববর্তী সংখ্যা ১'র কমপ্লিমেন্ট কিনা (Previous Number Same as 1's Complement)

  2. নাম্বার লাইনে শূন্য থেকে X পর্যন্ত যেতে লাগে ন্যূনতম জাম্পের সংখ্যা বের করা C++-তে

  3. C++ প্রোগ্রাম: একটি সংখ্যা ২-এর পাওয়ার কিনা তা চেক করা

  4. পাইথনে দুটি শহরে সমান সংখ্যক মানুষ পাঠানোর ন্যূনতম খরচ গণনা করার প্রোগ্রাম