Автомат получает на вход два двузначных десятичных числа. по по- лученным числам строится новое десятичное число по правилам. 1. вычисляются два числа - сумма цифр первого числа и сумма цифр второго числа. 2. полученные два числа записываются друг за другом в порядке не- убывания (без разделителей). определите, сколько из ниже чисел могут получиться в результате работы автомата: 211 1717 1817 1718 1719 219 21 10 1414 457 3411 1318
using namespace std;
int main()
{
int Count[16],Names[16];
for (int i=0; i<16; i++)
{
Count[i] = 0;
Names[i] = i + 1;
}
int n,t;
cin >> n;
for (int i=1; i<=n; i++)
{
cin >> t;
Count[t] = Count[t] + 1;
}
for (int i=15; i>0; i--)
for (int j=1; j<i; j++)
if (Count[j-1] < Count[j])
{
t = Count[j]; Count[j] = Count[j-1]; Count[j-1] = t;
t = Names[j]; Names[j] = Names[j-1]; Names[j-1] = t;
}
for (int i=0; i<16; i++)
if (Count[i] > 0)
cout <<Names[i] <<' ' <<Count[i] <<endl;
return 0;
}
Только при вводе t помни, что индексация массив в С++ начинается с нуля, соответственно последний элемент будет иметь индекс N-1.