Язык программирования PASKAL. Если в заданном четырехзначном натуральном числе X поменять местами первую и вторую пары цифр, а затем к полученному результату арифметически прибавить первую цифру исходного числа, то в полученном числе Y цифры будут расположены в порядке неубывания. По числу Y определите X. Число должно быть задано в соответствии с условием. В противном случае должен быть выдан результат -1.
var steps := 12; // За кол-во ходов
var Xend := 6; // В точку с координатой X
var Yend := 4; // ... и Y
var vars := 0; procedure Find(step, X, Y : Integer);
begin
if step = 0 then
vars += (X = Xend) and (Y = Yend) ? 1 : 0
else
begin
Find(step - 1, X + 1, Y );
Find(step - 1, X - 1, Y );
Find(step - 1, X , Y + 1);
Find(step - 1, X , Y - 1);
end;
end;
begin
Find(steps, 0, 0);
Print(vars);
end.