কম্পিউটার

N-এর নিচের প্রতিটি পূর্ণসংখ্যাকে C++ এ যোগফল হিসেবে প্রকাশ করার জন্য ন্যূনতম সংখ্যার প্রয়োজন


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

আমাদের একটি পূর্ণসংখ্যা N আছে। আমাদের N কে K পূর্ণসংখ্যার যোগফল হিসাবে প্রকাশ করতে হবে যাতে এই পূর্ণসংখ্যার কিছু বা সমস্ত যোগ করে আমরা 1 থেকে N পরিসরের সমস্ত সংখ্যা পেতে পারি। কাজটি হল K এর ন্যূনতম মান খুঁজে পাওয়া

উদাহরণ

যদি N =8 হয় তাহলে চূড়ান্ত উত্তর যেমন K হবে 3

যদি আমরা 1, 2, 3, এবং 4 পূর্ণসংখ্যা নিই তাহলে এই গ্রুপগুলির মধ্যে কিছু বা সমস্ত যোগ করলে আমরা 1 থেকে N

পরিসরের সমস্ত সংখ্যা পেতে পারি। <প্রে>উদাঃ 1 =12 =23 =34 =45 =1 + 56 =4 + 27 =4 + 38 =1 + 3 + 4

অ্যালগরিদম

প্রদত্ত পূর্ণসংখ্যা থেকে বিটের সংখ্যা গণনা করুন

উদাহরণ

#include নেমস্পেস ব্যবহার করে std;int getMinNumbers(int n) { int cnt =0; যখন (n) { ++cnt; n =n>> 1; } ফিরুন cnt;}int main() { int n =8; cout <<"সর্বনিম্ন প্রয়োজনীয় সংখ্যা =" < 

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

আউটপুট

সর্বনিম্ন প্রয়োজনীয় সংখ্যা =4

  1. C++ এ একটি অ্যারের অঙ্ক থেকে গঠিত দুটি সংখ্যার ন্যূনতম যোগফল

  2. C++ এ অ্যারেকে সমানভাবে বিভক্ত করতে ন্যূনতম ধনাত্মক পূর্ণসংখ্যার প্রয়োজন

  3. C++ ব্যবহার করে যোগফল হিসেবে N প্রকাশ করতে ন্যূনতম সংখ্যক প্যালিনড্রোম প্রয়োজন।

  4. C++ এ প্রথম n প্রাকৃতিক সংখ্যার যোগফল