কম্পিউটার

C++ এ প্রদত্ত সংখ্যার সেট বিট ব্যবহার করে ন্যূনতম সংখ্যা


সমস্যা বিবৃতি

একটি স্বাক্ষরবিহীন সংখ্যা দেওয়া হলে, প্রদত্ত স্বাক্ষরবিহীন সংখ্যার বিটগুলি ব্যবহার করে ন্যূনতম সংখ্যাটি তৈরি করা যেতে পারে।

উদাহরণ

ইনপুট =10 হলে উত্তর হবে 3

10-এর বাইনারি উপস্থাপনা হল 1010 এবং 2 সেট বিট সহ সর্বনিম্ন সংখ্যা হল 0011 অর্থাৎ 3

অ্যালগরিদম

<পূর্ব>1. সেট বিট সংখ্যা গণনা.2. (সেট বিটের সংখ্যা) ^ 2 - 1 সর্বনিম্ন সংখ্যা প্রতিনিধিত্ব করে)

উদাহরণ

#include নেমস্পেস ব্যবহার করে std;int getSetBits(int n) { int cnt =0; যখন (n) { ++cnt; n =n &(n - 1); } ফিরুন cnt;}int getMinNumber(int n){ int bits =getSetBits(n); রিটার্ন pow(2, বিট) - 1;}int main() { int n =10; cout <<"সর্বনিম্ন সংখ্যা =" < 

আপনি যখন উপরের প্রোগ্রামটি কম্পাইল এবং এক্সিকিউট করবেন। এটি নিম্নলিখিত আউটপুট তৈরি করে

আউটপুট

সর্বনিম্ন সংখ্যা =3

  1. C++ এ ডিসজয়েন্ট সেট ব্যবহার করে দ্বীপের সংখ্যা খুঁজুন

  2. C++ ব্যবহার করে একটি প্রদত্ত সংখ্যার পুনরাবৃত্তি সংখ্যাগুলি সরান

  3. C++ ব্যবহার করে শুধুমাত্র L-th এবং R-th সূচকের মধ্যে সেট বিট সহ সংখ্যাটি খুঁজুন

  4. C++ ব্যবহার করে একটি সেটে রিফ্লেক্সিভ রিলেশনের সংখ্যা খুঁজুন