Код для питона:
def solve(a):
def count(r,c):
return a[r][c] if r >= 0 and r < len(a) and c >= 0 and c < len(a[r]) and a[r][c] != None else 0
a[0][0] = 1
for step in range(1, len(a) + len(a[0]) - 1):
row, col = (0, step) if step < len(a[0]) else (step - len(a[0]) + 1, len(a[0]) - 1)
while col >= 0 and row < len(a):
if a[row][col] != None:
a[row][col] = count(row-1, col) + count(row, col-1)
row, col = row+1, col-1
return a[-1][-1]
Поле задаём в виде списка списков:
field = [
[0,0,0,0,0,None,None,None],
[0,0,None,0,0,0,0,None],
[0,0,0,0,0,0,0,0],
[0,None,0,0,0,0,0,0],
[0,0,0,0,None,0,0,0],
[0,0,0,0,0,0,0,0],
[None,None,0,0,0,None,0,0],
[None,None,0,0,0,0,0,0]
]
Объяснение:
Если нужно просто решение, то я приложил картинку
У попередніх публікаціях ми вже познайомилися із середовищем програмування PascalABC.NET. Одним із недоліків даного ПЗ для україномовних користувачів (хоч і несуттєвих з точки зору функціональності) була відсутність української локалізації.
Знайти українізатор у Інтернеті не вдалося – його просто не існує. Маючи певний досвід локалізації програмного забезпечення, вирішив проаналізувати можливість перекладу PascalABC.NET українською мовою.
Проглянувши каталог встановленої програми і з’ясувавши принцип підключення файлів з англійською та російською мовами аналогічним чином реалізував можливість обирати в налаштуваннях українську мову інтерфейсу. Днів два пішло на переклад (близько 1500 рядків).
Сьогодні нарешті завершив українізацію інтерфейсу для PascalABC.NET, викладаю у вільний доступ.
Україномовний PascalABC.NET
Завантажити українізатор (45 kb)
Інструкція по встановленню
Розархівувати папку Ukr у папку встановленої програми. (Шлях по замовчуванню – C:\Program Files\PascalABC.NET\Lng\)
У налаштуваннях програми обрати українську мову.
(Сервис – Настройки – Общие – Язык).
Перезавантажити програму.
Українізація актуальна для PascalABC.NET (версія 3.2, збірка 1504 від 09.07.2017)
Upd 17.07.2017 р. Відправляв локалізацію розробникам PascalABC.NET, отримав відповідь: локалізацію додали в програму, з’явиться в наступних оновленнях.