-
2022 KAKAO BLIND RECRUITMENT: 사라지는 발판코딩 테스트/Level 3 2022. 11. 30. 00:52반응형
https://school.programmers.co.kr/learn/courses/30/lessons/92345
파이썬
def solution(board, aloc, bloc): def search(ay, ax, by, bx): next_nodes = [(ny, nx) for dy, dx in ((1, 0), (-1, 0), (0, 1), (0, -1)) if 0 <= (ny := ay + dy) < len(board) and 0 <= (nx := ax + dx) < len(board[0]) and board[ny][nx]] if not next_nodes: return False, 0 if ay == by and ax == bx: return True, 1 min_turn, max_turn = float('inf'), 0 win = False for ny, nx in next_nodes: board[ay][ax] = 0 n_win, n_turn = search(by, bx, ny, nx) board[by][bx] = 1 if n_win: max_turn = max(max_turn, n_turn) else: win = True min_turn = min(min_turn, n_turn) return win, (min_turn if win else max_turn) + 1 return search(*aloc, *bloc)[1]
테스트 1 〉 통과 (0.01ms, 10.2MB) 테스트 2 〉 통과 (0.02ms, 10.2MB) 테스트 3 〉 통과 (0.07ms, 10.4MB) 테스트 4 〉 통과 (0.11ms, 10.2MB) 테스트 5 〉 통과 (0.20ms, 10.3MB) 테스트 6 〉 통과 (0.01ms, 10.4MB) 테스트 7 〉 통과 (0.01ms, 10.4MB) 테스트 8 〉 통과 (0.04ms, 10.2MB) 테스트 9 〉 통과 (0.13ms, 10.3MB) 테스트 10 〉 통과 (0.11ms, 10.3MB) 테스트 11 〉 통과 (0.02ms, 10.2MB) 테스트 12 〉 통과 (0.09ms, 10.2MB) 테스트 13 〉 통과 (0.02ms, 10.2MB) 테스트 14 〉 통과 (0.01ms, 10.3MB) 테스트 15 〉 통과 (0.08ms, 10.2MB) 테스트 16 〉 통과 (0.08ms, 10.3MB) 테스트 17 〉 통과 (25.79ms, 10.3MB) 테스트 18 〉 통과 (58.56ms, 10.2MB) 테스트 19 〉 통과 (4.65ms, 10.2MB) 테스트 20 〉 통과 (1.32ms, 10.2MB) 테스트 21 〉 통과 (336.81ms, 10.3MB) 테스트 22 〉 통과 (0.41ms, 10.3MB) 테스트 23 〉 통과 (0.06ms, 10.1MB) 테스트 24 〉 통과 (0.01ms, 10.3MB) 테스트 25 〉 통과 (0.19ms, 10.3MB) 테스트 26 〉 통과 (0.13ms, 10.4MB) 테스트 27 〉 통과 (0.02ms, 10.3MB) 테스트 28 〉 통과 (0.03ms, 10.3MB) 테스트 29 〉 통과 (0.05ms, 10.3MB) 테스트 30 〉 통과 (0.01ms, 10.4MB)
반응형