কম্পিউটার

প্রদত্ত সীমাবদ্ধতার সাথে প্রদত্ত অ্যারের উপাদানগুলি যোগ করুন?


এই সমস্যার জন্য, দুটি প্রদত্ত অ্যারের উপাদান যোগ করার জন্য আমাদের কিছু সীমাবদ্ধতা রয়েছে যার ভিত্তিতে যোগ করা মান পরিবর্তন করা হবে। দুটি প্রদত্ত অ্যারের সমষ্টি a[] এবং b[] তৃতীয় অ্যারে c[]তে এমনভাবে সংরক্ষণ করা হয়েছে যে তারা একক সংখ্যায় কিছু উপাদান দিয়েছে। এবং যদি যোগফলের অঙ্কের সংখ্যা 1-এর বেশি হয়, তাহলে তৃতীয় অ্যারের উপাদান দুটি একক-অঙ্কের উপাদানে বিভক্ত হবে। উদাহরণস্বরূপ, যদি যোগফল 27 হয়, তৃতীয় অ্যারে এটিকে 2,7 হিসাবে সংরক্ষণ করে।

Input: a[] = {1, 2, 3, 7, 9, 6}
       b[] = {34, 11, 4, 7, 8, 7, 6, 99}
Output: 3 5 1 3 7 1 4 1 7 1 3 6 9 9

ব্যাখ্যা

আউটপুট অ্যারে এবং উভয় অ্যারের 0ম সূচক থেকে একটি লুপ চালান। লুপের প্রতিটি পুনরাবৃত্তির জন্য, আমরা উভয় অ্যারেতে পরবর্তী উপাদানগুলি বিবেচনা করি এবং সেগুলি যোগ করি। যোগফল 9-এর বেশি হলে, আমরা যোগফলের পৃথক সংখ্যাগুলিকে আউটপুট অ্যারেতে পুশ করি অন্যথায় আমরা যোগফলকেই ধাক্কা দিই। অবশেষে, আমরা বড় ইনপুট অ্যারের অবশিষ্ট উপাদানগুলিকে আউটপুট অ্যারেতে পুশ করি৷

উদাহরণ

#include <iostream>
#include<bits/stdc++.h>
using namespace std;
void split(int n, vector<int> &c) {
   vector<int> temp;
   while (n) {
      temp.push_back(n%10);
      n = n/10;
   }
   c.insert(c.end(), temp.rbegin(), temp.rend());
}
void addArrays(int a[], int b[], int m, int n) {
   vector<int> out;
   int i = 0;
   while (i < m && i < n) {
      int sum = a[i] + b[i];
      if (sum < 10) {
         out.push_back(sum);
      } else {
         split(sum, out);
      }
      i++;
   }
   while (i < m) {
      split(a[i++], out);
   }
   while (i < n) {
      split(b[i++], out);
   }
   for (int x : out)
   cout << x << " ";
}
int main() {
   int a[] = {1, 2, 3, 7, 9, 6};
   int b[] = {34, 11, 4, 7, 8, 7, 6, 99};
   int m =6;
   int n = 8;
   addArrays(a, b, m, n);
   return 0;
}

  1. C++ এ প্রদত্ত অ্যারে থেকে জোড় এবং বিজোড় উপাদান অনুপস্থিত

  2. C++ এ প্রদত্ত সীমাবদ্ধতা সহ একটি ম্যাট্রিক্সে দীর্ঘতম পথ খুঁজুন

  3. C++ এ একটি অ্যারেতে অ-পুনরাবৃত্ত (স্বতন্ত্র) উপাদানগুলির সমষ্টি খুঁজুন

  4. C++ এ প্রদত্ত পার্থক্যের সাথে একটি জোড়া খুঁজুন