문제 보기 이 문제는 백트랙킹(Backtracking) 문제이다. 상어가 먹을 수 있는 물고기 번호의 합의 최댓값을 구해야 한다. 상어가 먹을 수 있는 물고기가 여러 개 일 때 번호가 가장 높은 것을 먹는다고 최종적으로 최댓값이 된다는 보장이 없다. 따라서 모든 경우에 대해서 끝까지 진행하고 최종적으로 판단해야 한다. 알고리즘 구현 과정은 아래와 같다. 1. 현재 상어 위치에 있는 물고기를 먹는다. 2. 모든 물고기를 이동시킨다. 3. 상어가 먹을 수 있는 물고기를 파악한다. 4. 3번의 모든 경우에 대해서 dfs 탐색을 진행한다. 코드 import copy dx = [-1, -1, 0, 1, 1, 1, 0, -1] dy = [0, -1, -1, -1, 0, 1, 1, 1] def food(array, ..