কম্পিউটার

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


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

N আকারের একটি অ্যারে দেওয়া হয়েছে এবং প্রতিটি উপাদান হল 1 বা 0। কাজটি হল সমস্ত উপাদানকে শূন্যে রূপান্তর করার জন্য ন্যূনতম কতগুলি অপারেশন করতে হবে তা গণনা করা। কেউ নিচের অপারেশন করতে পারে -

যদি একটি উপাদান 1 হয়, আপনি তার মান 0 এর সমান পরিবর্তন করতে পারেন -

  • পরের ধারাবাহিক উপাদানটি 1 হলে, এটি স্বয়ংক্রিয়ভাবে 0

    -এ রূপান্তরিত হবে
  • যদি পরবর্তী ধারাবাহিক উপাদানটি ইতিমধ্যে 0 হয়, তাহলে কিছুই হবে না।

যদি arr[] ={1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 1} তাহলে সমস্ত উপাদানকে শূন্য করতে 4 অপারেশন প্রয়োজন হয়

অ্যালগরিদম

1. যদি বর্তমান উপাদানটি 1 হয় তাহলে গণনা বৃদ্ধি করুন এবং পরবর্তী 0 অনুসন্ধান করুন কারণ সমস্ত পরপর 1 স্বয়ংক্রিয়ভাবে 0.2 তে রূপান্তরিত হবে। চূড়ান্ত গণনা ফেরত দিন 

উদাহরণ

#include #define SIZE(arr) (sizeof(arr) / sizeof(arr[0])) namespace ব্যবহার করে std;int performanceMinOperation(int *arr, int n){ int i, cnt =0; জন্য (i =0; i 
 

            
  1. C++ ব্যবহার করে অ্যারেটিকে ভালো করার জন্য ন্যূনতম সংখ্যক উপাদান সরানো উচিত।

  2. C++-এ অ্যারের GCD-কে k-এর গুণিতক করার জন্য ন্যূনতম ক্রিয়াকলাপ

  3. C++-এ অ্যারের সমস্ত উপাদান একই করতে ন্যূনতম ডিলিট অপারেশন।

  4. পাইথনে সমস্ত অ্যারে উপাদানকে সমান করতে প্রয়োজনীয় ক্রিয়াকলাপগুলির সংখ্যা৷