Ваше завдання - написати програму, яка знайде оптимальну кількість рухів, необхідних для отримання від лівого нижнього кута прямокутника до правого верхнього кута прямо навпроти.
Ваша програма прийме дані як впорядковану пару (width, height). Це будуть розміри прямокутника, з яким ви будете працювати. Ваша програма створить ASCII-мистецтво рішення (використовувати .для порожнього квадрата та #для частини рішення, Xдля початкового квадрата) та підраховуватиме кількість кроків, необхідних для досягнення кінцевої точки. Діагональні ходи заборонені. Якщо є кілька рішень, виберіть одне для виведення.
Виграє найкоротша програма в байтах.
Приклад
Вхід: (4, 5)
Вихід:
..##
..#.
.##.
.#..
X#..
Кількість рухів: 7
#оскільки нелогічно йти вліво або вниз.
#"оптимального рішення" (що таке рішення, яке ніколи не рухається вліво чи вниз)?