কম্পিউটার

(i, j) জোড়ার সংখ্যা যেমন (n % i) % j) % n সি++ এ সর্বাধিক করা হয়


ইনপুট হিসাবে আমাদের একটি সংখ্যা দেওয়া হয়। লক্ষ্য হল (i,j) ফর্মের জোড়ার সংখ্যা খুঁজে বের করা যাতে ((num%i)%j)%num সর্বাধিক করা হয় এবং i এবং j উভয়ই [1,num] এর মধ্যে থাকে।

আসুন উদাহরণ দিয়ে বুঝতে পারি

ইনপুট − সংখ্যা=4

আউটপুট − (i, j) জোড়ার সংখ্যা যেমন ((n % i) % j) % n সর্বাধিক করা হয় −3

ব্যাখ্যা − জোড়া হবে:(3,2), (3,3), (3,4)

ইনপুট − সংখ্যা=6

আউটপুট − (i, j) জোড়ার সংখ্যা যেমন (n % i) % j) % n সর্বাধিক করা হয় − 4

ব্যাখ্যা − জোড়া হবে:(4,3, (4,4), (4,5), (4,6)

নিম্নলিখিত প্রোগ্রামে ব্যবহৃত পদ্ধতি

আমরা দুটি পদ্ধতি ব্যবহার করে এই সমস্যার সমাধান করব। নির্বোধ পদ্ধতিতে, সর্বাধিক অবশিষ্ট মান পাওয়া যেতে পারে যদি আমাদের সংখ্যাটি অর্ধেক থাকে। temp=num/2 +1 সেট করুন। সর্বাধিক অবশিষ্টাংশ মোট=num%temp হিসাবে সেট করুন। i,j এর জন্য 0 থেকে num পর্যন্ত যান এবং i,j খুঁজুন যেমন ((num % i) % j) % num ==মোট।

  • পূর্ণসংখ্যা হিসাবে ইনপুট সংখ্যা নিন।

  • ফাংশন maximized_pair(int num) num নেয় এবং (i, j) জোড়ার সংখ্যা প্রদান করে যেমন ((n % i) % j) % n সর্বাধিক করা হয়৷

  • 0 হিসাবে প্রাথমিক গণনা নিন।

  • সর্বাধিক অবশিষ্টের জন্য সংখ্যা অর্ধেক কমিয়ে দিন। তাপমাত্রা সেট করুন =((সংখ্যা / 2) + 1)।

  • মোট =num % temp;

    হিসাবে সর্বাধিক অবশিষ্টাংশ গণনা করুন
  • জোড়ার জন্য (i,j)। [1,num] পরিসরে i এবং j এর জন্য দুটি লুপ ব্যবহার করে ট্রাভার্স করুন।

  • মান (num % i) % j) % num মোটের সমান হলে, বৃদ্ধির সংখ্যা।

  • উভয়ের শেষে লুপ ফেরত ফলাফল হিসাবে গণনা করে।

দক্ষ পদ্ধতি

সর্বাধিক অবশিষ্ট মোট =num % temp পান যেখানে তাপ সংখ্যা/2+1 . এখন জোড়ার জন্য (i,j) সর্বাধিক অবশিষ্টাংশ পেতে আমাদের সংখ্যা হিসাবে i বেছে নিতে হবে। মোটকে সর্বাধিক করার জন্য আমরা মোট রেঞ্জ থেকে j বেছে নিতে পারি। সুতরাং জোড়ার সংখ্যা হবে সংখ্যা-মোট .

ক্ষেত্রে সংখ্যা=2 , 4 ফেরত দিন যেহেতু জোড়া হবে (1,1), (1,2), (2,1), (2,2) এবং সংখ্যা-মোট ব্যবহার করে গণনা করা হবে না।

  • পূর্ণসংখ্যা হিসাবে ইনপুট সংখ্যা নিন।

  • ফাংশন maximized_pair(int num) num নেয় এবং (i, j) জোড়ার সংখ্যা প্রদান করে যেমন ((n % i) % j) % n সর্বাধিক করা হয়৷

  • 0 হিসাবে প্রাথমিক গণনা নিন।

  • যদি num==2, রিটার্ন 4.

  • অন্যথায় সর্বাধিক অবশিষ্টের জন্য সংখ্যা অর্ধেক কমিয়ে দিন। তাপমাত্রা সেট করুন =((সংখ্যা / 2) + 1)।

  • মোট =num % temp;

    হিসাবে সর্বাধিক অবশিষ্টাংশ গণনা করুন
  • গণনা=সংখ্যা-মোট

    সেট করুন
  • শেষে ফলাফল হিসাবে গণনা ফেরত.

উদাহরণ (নিষ্পাপ পদ্ধতি)

#include<bits/stdc++.h>
using namespace std;
int maximized_pair(int num){
   int count = 0;
   int temp = ((num / 2) + 1);
   int total = num % temp;
   for (int i = 1; i <= num; i++){
      for (int j = 1; j <= num; j++){
         int check = ((num % i) % j) % num;
         if (check == total){
            count++;
         }
      }
   }
   return count;
}
int main(){
   int num = 10;
   cout<<"Count of pairs of (i, j) such that ((n % i) % j) % n is maximized are: "<<maximized_pair(num);
}

আউটপুট

যদি আমরা উপরের কোডটি চালাই তবে এটি নিম্নলিখিত আউটপুট −

উৎপন্ন করবে
Count of pairs of (i, j) such that ((n % i) % j) % n is maximized are: 6

উদাহরণ (দক্ষ পদ্ধতি)

#include<bits/stdc++.h>
using namespace std;
int maximized_pair(int num){
   int count = 0;
   if (num == 2){
      return 4;
   }
   else{
      int temp = ((num / 2) + 1);
      int total = num % temp;
      count = num - total;
   }
   return count;
}
int main(){
   int num = 10;
   cout<<"Count of pairs of (i, j) such that ((n % i) % j) % n is maximized are: "<<maximized_pair(num);
}

আউটপুট

যদি আমরা উপরের কোডটি চালাই তবে এটি নিম্নলিখিত আউটপুট −

উৎপন্ন করবে
Count of pairs of (i, j) such that ((n % i) % j) % n is maximized are: 6

  1. অবিন্যস্ত জোড়া (i,j) গণনা করুন যাতে a[i] এবং a[j] এর গুণফল C++ এ দুটির শক্তি

  2. k উপাদানগুলি রাখুন যাতে ন্যূনতম দূরত্ব C++ এ সর্বাধিক করা হয়

  3. ন্যূনতম x খুঁজুন যেমন (x % k) * (x / k) ==n C++ এ

  4. একটি অ্যারেতে সমস্ত জোড়া (a, b) খুঁজুন যেমন একটি % b =k C++ এ