В город М напрямую можно попасть только из города Н (в который напрямую можно попасть только из города Ж), и из города Ж. Значит, для любого пути в Ж из А есть два варианта, как проехать в М.
В город Ж можно попасть напрямую из городов В, Г, и Д. В город В из города А можно попасть тремя путями: АБВ, АГВ и АБГВ, в город Г - двумя: АГ и АБГ, в город Е - тремя: АГЕ, АДЕ и АБГЕ.
Итого: Из города А в город Ж есть 3+2+3=8 путей, из Ж в М - 2 пути. Для каждого пути из А в Ж есть оба варианта пути из Ж в М, поэтому умножаем: 8×2=16 путей.
ответ: 16 путей
Буду очень благодарен, если Вы отметите мой ответ как лучший!
Внимание! Если программа не работает, обновите версию!
1. Если надо преобразовать число без знака в число
begin
var n:=ReadInteger; // исходное число
n:=n.ToString.Inverse.ToInteger; // полученное число
n.Println; // вывод результата
end.
2. Если нужно только вывести результат
begin
var n:=ReadInteger; // исходное число
n.ToString.Inverse.ToInteger.Println
end.
3. Если надо только поменять местами символы, введенные с клавиатуры (например, два символа, изображающие число)
begin
ReadlnString.Inverse.Println
end.
4. Если заданное число может быть отрицательным
begin
var n:=ReadInteger; // исходное число
var s:=Sign(n); // знак числа
n:=Abs(n); // модуль числа
n:=n.ToString.Inverse.ToInteger*s; // полученное число
n.Println; // вывод результата
end.