কম্পিউটার

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


বিবরণ

অঙ্কের একটি অ্যারে দেওয়া হয়েছে যাতে 0 থেকে 9 পর্যন্ত মান রয়েছে। কাজটি হল অ্যারের সংখ্যা থেকে গঠিত দুটি সংখ্যার ন্যূনতম সম্ভাব্য যোগফল খুঁজে বের করা। দয়া করে মনে রাখবেন যে আমাদের প্রদত্ত অ্যারের সমস্ত সংখ্যা ব্যবহার করতে হবে

উদাহরণ

যদি ইনপুট অ্যারে হয় {7, 5, 1, 3, 2, 4} তাহলে ন্যূনতম যোগফল হল 382 হিসাবে, আমরা দুটি সংখ্যা 135 এবং 247 তৈরি করতে পারি৷

অ্যালগরিদম

  • অ্যারেকে আরোহী ক্রমে সাজান
  • বিকল্পভাবে সাজানো অ্যারে থেকে যেমন জোড় এবং বিজোড় সূচক থেকে একটি সংখ্যা বাছাই করে দুটি সংখ্যা তৈরি করুন

উদাহরণ

#include <bits/stdc++.h>
using namespace std;
int getMinSum(int *arr, int n) {
   sort(arr, arr + n);
   int a = 0;
   int b = 0;
   for (int i = 0; i < n; ++i) {
      if (i % 2 == 0) {
         a = a * 10 + arr[i];
      } else {
         b = b * 10 + arr[i];
      }
   }
   return a + b;
}
int main() {
   int arr[] = {7, 5, 1, 3, 2, 4};
   int n = sizeof(arr) / sizeof(arr[0]);
   cout << "Minimum sum = " << getMinSum(arr, n) << endl;
   return 0;
}

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

তৈরি করে

আউটপুট

Minimum sum = 382

  1. C++ এ একটি অ্যারে সংখ্যার গুণফলের শেষ k সংখ্যা খুঁজুন

  2. C++ এ দুটি সংখ্যার মধ্যে সর্বনিম্ন দূরত্ব নির্ণয় করুন

  3. সংখ্যাগুলিকে তাদের সংখ্যার যোগফল অনুযায়ী C++ এ সাজান

  4. C++ এ একটি সমষ্টি অ্যারে ধাঁধা?