কম্পিউটার

C++ এ Y =(X^6 + X^2 + 9894845) % 981 ফাংশনের মান খুঁজুন


ধরুন আমরা f(x) =(x^6 + x^2 + 9894845) % 971 এর মতো ফাংশন দিয়েছি, এখন x এর একটি প্রদত্ত মানের জন্য, আমাদের মানটি খুঁজে বের করতে হবে f(x) এর।

সুতরাং, যদি ইনপুট 5 এর মত হয়, তাহলে আউটপুট হবে 469

এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -

  • একটি ফাংশন power_mod() সংজ্ঞায়িত করুন, এটি বেস, এক্সপোনেন্ট, মডুলাস,

    নেবে
  • বেস :=বেস মোড মডুলাস

  • ফলাফল :=1

  • যখন সূচক> 0, do −

    • যদি সূচকটি বিজোড় হয়, তাহলে −

      • ফলাফল :=(ফলাফল * বেস) মোড মডুলাস

    • ভিত্তি :=(বেস * বেস) মোড মডুলাস

    • সূচক =সূচক /2

  • ফেরত ফলাফল

  • প্রধান পদ্ধতি থেকে নিম্নলিখিতগুলি করুন -

  • ফেরত পাওয়ার_মোড(n, 6, m)+power_mod(n, 2, m)) mod m + 355) mod m

উদাহরণ

আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

#include <bits/stdc++.h>
using namespace std;
typedef long long int lli;
lli power_mod(lli base, lli exponent, lli modulus) {
   base %= modulus;
   lli result = 1;
   while (exponent > 0) {
      if (exponent & 1)
         result = (result * base) % modulus;
      base = (base * base) % modulus;
      exponent >>= 1;
   }
   return result;
}
int main(){
   lli n = 654654, m = 971;
   cout<<(((power_mod(n, 6, m)+power_mod(n, 2, m))% m + 355)% m);
}

ইনপুট

84562

আউটপুট

450

  1. N-এর ভিত্তি B প্রতিনিধিত্বে অনুগামী শূন্যের সংখ্যা খুঁজুন! C++ ব্যবহার করে

  2. বেস 16 N এর প্রতিনিধিত্বে অনুগামী শূন্যের সংখ্যা খুঁজুন! C++ ব্যবহার করে

  3. C++ এ বাইনারি সার্চ ট্রিতে ন্যূনতম মান সহ নোড খুঁজুন

  4. exp() ফাংশন C++