a) Максимальное значение суммы разрядов равно 18 (получется как 9+9).
b) Разряды результата разбиватются на два числа, первое из которых не может превышать второе.
214 разбивается на 2 и 14. Такой результат недопустим: если сумма двух чисел была равна 2, то никакое из этих чисел не даст 14 во второй сумме.
148 разбивается на 14 и 8. Такой результат недопустим: нарушен порядок следования сумм.
145 разбивается на 14 и 5. Такой результат недопустим: нарушен порядок следования сумм.
142 разбивается на 14 и 2. Такой результат недопустим: нарушен порядок следования сумм.
514 разбивается на 5 и 14. Такой результат допустим.
814 разбивается на 8 и 14. Такой результат допустим.
114 разбивается на 1 и 14. Такой результат недопустим: если сумма двух чисел была равна 1, то никакое из этих чисел не даст 14 во второй сумме.
Ответ: 2.
Как понял. Задаешь два вектора. И начинаешь сравнивать значения первого вектора, со значениями второго. Если какие то значения окажутся равными. то записать какой слот они занимают в первом векторе. После проверки всех чисел, удалить запомненные слоты в первом векторе
Var
n,k,sum:integer; s,s1:string;
begin
write('n = '); readln(n);
s:='';
sum:=0;
while (n>0)and(n mod 2 = 0) do
begin
k:=n mod 10;
str(k,s1);
s:=s1+'+'+s;
sum:=sum+k;
n:=n div 10;
end;
if s<>'' then s[length(s)]:='=';
writeln(s,sum);
end.
Пример:
n = 1784
8+4=12
Ответ:
Ну, вот на Pascal написал. Вроде так...
var
Sum, I : integer;
Sum := 0;
I := 45;
While I >= M do
begin
Sum := Sum + I;
I := I - 3;
end;
Writeln(Sum);
end.
Объяснение: