372
Объяснение:
Запишем для каждого числа, сколькими его можно получить из предыдущих чисел. Отдельно посчитаем программы 2 -> 5, 5 -> 26. Тогда для получения ответа достаточно перемножить результаты первой и второй программ (на каждый результат первой программы приходится каждый результат второй программы).
2 -> 5:
2 — 13 — "2" — 14 — "3" + "2" — 25 — "4" — 25 -> 26:
5 — 16 — "5" — 17 — "6" — 18 — "7" — 19 — "8" — 110 — "9" + "5" — 211 — "10" + "6" — 312 — "11" + "7" — 413 — "12" + "8" — 514 — "13" + "9" — 615 — "14" + "10" — 816 — "15" + "11" — 1117 — "16" + "12" — 1518 — "17" + "13" — 2019 — "18" + "14" — 2620 — "19" + "15" — 3421 — "20" + "16" — 4522 — "21" + "17" — 6023 — "22" + "18" — 8024 — "23" + "19" — 10625 — "24" + "20" + "5" — 14126 — "25" + "21" — 1862 * 186 = 372
#include <iostream>
using std::cin;
using std::cout;
int main(int argc, char const* argv[]) {
int n;
cout << "Enter size of array:\n";
cin >> n;
int *mas1 = new int[n];
int *mas2 = new int[n];
cout << "Enter elements of array:\n";
for (register int i = 0; i < n; i++) {
cin >> mas1[i];
}
int counter = 0;
for (register int i = 0; i < n; i++) {
if (mas1[i] < 0) {
mas2[counter] = mas1[i];
counter++;
}
}
for (register int i = 0; i < n; i++) {
if (mas1[i] == 0) {
mas2[counter] = mas1[i];
counter++;
}
}
for (register int i = 0; i < n; i++) {
if (mas1[i] > 0) {
mas2[counter] = mas1[i];
counter++;
}
}
for (register int i = 0; i < n; i++) {
cout << mas2[i] << std::endl;
}
return 0;
}