Шашку — в дамки ДАЮ 100 БАЛЛОВ!!!! НА ПИТОНЕ С ИСПОЛЬЗОВАНИЕМ ДВУМЕРНОГО МАССИВА На шахматной доске (8×8) стоит одна белая шашка. Сколькими способами она может пройти в дамки? (Белая шашка ходит по диагонали. на одну клетку вверх-вправо или вверх-влево. Шашка проходит в дамки, если попадает на верхнюю горизонталь.) Входные данные Вводятся два числа от 1 до 8: номер номер столбца (считая слева) и строки (считая снизу), где изначально стоит шашка. Выходные данные Вывести одно число — количество путей в дамки. Примеры Ввод 3 7 1 8 3 6 Вывод 2 1 4
СРОЧНО
Ответы
Ответ дал:
21
Алгоритм: положим в ячейку, где стоит шашка, значение 1. В некоторую ячейку с горизонталью i и вертикалью j можно добраться из клеток (i-1, j-1) и (i-1, j+1), если эти клетки существуют. Тогда для двумерного массива A, выступающего в роли доски, будет справедливо следующее утверждение: A[i+1][j] = A[i][j-1] + A[i][j+1]. Существовать ячейки не будут, если находятся в крайних столбцах: A[i+1][0] = A[i][1] и A[i+1][7] = A[i][6].
Программа:
y, x = map(int, input().split())
x, y = x - 1, y - 1
board = [[0]*8 for i in range(8)]
board[x][y] = 1
for i in range(x, 7):
board[i+1][0] += board[i][1]
for j in range(1, 7):
board[i+1][j] += board[i][j-1] + board[i][j+1]
board[i+1][7] += board[i][6]
print(sum(board[7]))
nasgoryach:
При вводе 1 8, 3 6 дает неправильный результат
Вас заинтересует
1 год назад
1 год назад
1 год назад
6 лет назад
6 лет назад
8 лет назад