Heim > Backend-Entwicklung > C++ > Fügen Sie bei gegebener Einschränkung die Elemente des angegebenen Arrays hinzu

Fügen Sie bei gegebener Einschränkung die Elemente des angegebenen Arrays hinzu

PHPz
Freigeben: 2023-09-05 13:01:06
nach vorne
1128 Leute haben es durchsucht

Fügen Sie bei gegebener Einschränkung die Elemente des angegebenen Arrays hinzu

Für dieses Problem, um Elemente von zwei gegebenen Arrays hinzuzufügen, haben wir einige Einschränkungen. Basierend auf diesen Einschränkungen ändern sich die hinzugefügten Werte. Die Summe zweier gegebener Arrays a[] und b[] wird in einem dritten Array c[] gespeichert, sodass sie einige Elemente in Einheitszahlen ergeben. Wenn die Anzahl der Ziffern in der Summe größer als 1 ist, werden die Elemente des dritten Arrays in zwei einstellige Elemente aufgeteilt. Wenn die Summe beispielsweise 27 beträgt, speichert das dritte Array sie als 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
Nach dem Login kopieren

Erklärung

Arrays ausgeben und eine Schleife ab dem 0. Index beider Arrays ausführen. Bei jeder Iteration der Schleife betrachten wir die nächsten Elemente in beiden Arrays und fügen sie hinzu. Wenn die Summe größer als 9 ist, schieben wir die einzelnen Zahlen der Summe in das Ausgabearray, andernfalls schieben wir die Summe selbst in das Ausgabearray. Schließlich verschieben wir die verbleibenden Elemente des größeren Eingabearrays in das Ausgabearray.

Beispiel

#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;
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonFügen Sie bei gegebener Einschränkung die Elemente des angegebenen Arrays hinzu. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage