কম্পিউটার

C++-এ দুই এবং তার পরবর্তী ক্ষমতা


এই সমস্যায়, আমাদেরকে N পূর্ণসংখ্যার একটি অ্যারে দেওয়া হয়েছে। আমাদের কাজ হল পরবর্তি সংখ্যার গণনা খুঁজে বের করা যা এমনভাবে গঠিত হতে পারে যাতে যদি তাদের উপাদানগুলিকে গুণ করা হয়, তাহলে তারা একটি সংখ্যায় পরিণত হয় যা দুইটির শক্তি।

সমস্যাটি বোঝার জন্য একটি উদাহরণ দেওয়া যাক,

ইনপুট − arr =[2, 5, 4]

আউটপুট − 3

ব্যাখ্যা − পরবর্তী [2], [4] এবং [2, 4] পছন্দসই ফলাফল দেয়।

এই সমস্যা সমাধানের জন্য, আমাদের শক্তির যুক্তি বুঝতে হবে।

শুধুমাত্র 2 এর ক্ষমতা সহ সেই সংখ্যাগুলি পছন্দসই ফলাফল দিতে গুণ করবে। সুতরাং, আমাদেরকে অ্যারের থেকে শুধুমাত্র সেই অনুগামীগুলি বিবেচনা করতে হবে যেগুলি নিজেই 2 এর কিছু শক্তি।

সুতরাং, অ্যারেতে যদি M উপাদান থাকে যা 2 এর শক্তি, তাহলে সাব-অ্যারেগুলির গণনা হবে 2 M - 1

উদাহরণ

আমাদের সমাধানের বাস্তবায়ন দেখানোর প্রোগ্রাম

#include #include  namespace ব্যবহার করে std;bool isPowerTwo(int num) { if (num ==0) ফেরত মিথ্যা; যদি (সংখ্যা ==1) সত্য হয়; যদি (সংখ্যা এবং (সংখ্যা - 1)) মিথ্যা ফেরত দেয়; রিটার্ন true;}int SubsequenceWithPowerTwo(int arr[], int N) { int count =0; জন্য (int i =0; i  

আউটপুট

<পূর্ব> না। 2 এর ঘাত এমন একটি সংখ্যার সাথে গুন করা পরবর্তী অনুক্রম হল :7

  1. C++ এ দুটি সাজানো না করা অ্যারের ইউনিয়ন এবং ছেদ খুঁজুন

  2. C++ এ দেয়াল এবং গেটস

  3. C++ এ বৃত্ত এবং আয়তক্ষেত্র ওভারল্যাপিং

  4. C++ এ ডোমিনো এবং ট্রোমিনো টাইলিং