কম্পিউটার টিউটোরিয়াল

সি++-এ সর্টেড অ্যারেতে K-তম অনুপস্থিত উপাদান বের করা

এই টিউটোরিয়ালে, আমরা একটি প্রোগ্রাম লিখব যা প্রদত্ত সর্টেড অ্যারেতে K-তম অনুপস্থিত উপাদান বের করবে।

প্রদত্ত অনসর্টেড অ্যারেতে মিন থেকে ম্যাক্স পর্যন্ত K-তম অনুপস্থিত সংখ্যা বের করতে হবে। সমাধানের ধাপগুলো নিচে দেওয়া হলো:

সমস্যা সমাধানের ধাপসমূহ

  • সর্টেড অ্যারে ইনিশিয়ালাইজ করুন।
  • দুটি ভেরিয়েবল difference এবং count k দিয়ে ইনিশিয়ালাইজ করুন।
  • অ্যারেটি parcour করুন।
    • যদি বর্তমান উপাদান পরবর্তী উপাদানের সমান না হয়।
      • দুটি সংখ্যার পার্থক্য বের করুন।
      • যদি পার্থক্য k-এর চেয়ে বড় বা সমান হয়, তবে বর্তমান উপাদান + count রিটার্ন করুন।
      • অন্যথায় count থেকে পার্থক্য বাদ দিন।
  • -1 রিটার্ন করুন।
  • উদাহরণ কোড

    #include <bits/stdc++.h>
    using namespace std;
    
    int findMissingNumber(int arr[], int k, int n) {
        int difference, count = k;
        for(int i = 0 ; i < n - 1; i++) {
            if ((arr[i] + 1) != arr[i + 1]) {
                difference = arr[i + 1] - arr[i] - 1;
                if (difference >= count) {
                    return arr[i] + count;
                } else {
                    count -= difference;
                }
            }
        }
        return -1;
    }
    
    int main() {
        int arr[] = { 1, 2, 3, 5, 10 }, n = 5;
        int k = 3;
        cout << findMissingNumber(arr, k, n) << endl;
        return 0;
    }

    আউটপুট

    উপরের কোডটি রান করলে নিচের ফলাফল পাওয়া যাবে:

    7

    নিষ্কর্ষ

    এই টিউটোরিয়াল সম্পর্কে আপনার যেকোনো প্রশ্ন থাকলে কমেন্ট সেকশনে জানাতে পারেন।

    1. C++-এ সোর্টেড অ্যারেতে ২৫% এর বেশি বার বাড়ি হয় এমন উপাদান বের করা

    2. C++-এ সোর্ট করা এবং রোটেট করা অ্যারেতে সর্বোচ্চ উপাদান

    3. অ্যারে M বার কনক্যাটিনেট করে K-তম ন্যূনতম এলিমেন্ট (C++)

    4. C++-এ সোর্টেড অ্যারেে মেজোরিটি এলিমেন্ট আছে কিনা তা যাচাই করা