Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from typing import List
- def traverse_matrix(matrix: List[List[int]]) -> List[int]:
- n = len(matrix)
- def trav_rec(n, matrix):
- if n == 0:
- return []
- if n == 1:
- return [matrix[0][0]]
- if n == 2:
- return [matrix[0][0], matrix[0][1], matrix[1][1], matrix[1][0]]
- result = []
- result.extend(matrix[0])
- result.extend([matrix[i][-1] for i in range(1, n - 1)])
- result.extend(reversed(matrix[-1]))
- result.extend(reversed([matrix[i][0] for i in range(1, n-1)]))
- mini_matrix = [matrix[i][1:n-1] for i in range(1, n - 1)]
- result.extend(trav_rec(n - 2, mini_matrix))
- return result
- return trav_rec(n, matrix)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement