백준-2589-보물섬(파이썬)

문제이해

  • 이동은 상화좌우로 이웃한 육지로만 가능하다.
  • 보물은 최단거리로 이동하는데 있어 가장 긴 시간이 걸리는 육지 두 곳에 나눠져 있다 --> 출발지점과 도착지점에 하나씩
  • 보물이 묻혀 있는 두 곳 간의 최단 거리로 이동하는 시간을 구하는 프로그램을 작성하면된다.

문제생각

  • 일단 각 육지마다 bfs를 활용하여 갈 수 있는 육지까지의 거리를 확인해서 최대값을 구하면 된다고 생각한다.

  • 완전탐색으로 문제를 풀었지만 시간초과가 났다.

  • 이미 지났거나한 부분은 제외를 해야하는 건가..?

  • 원래 코드에서 Map을 -1과 0을 사용하여 다시 생성하는 부분을 삭제하고 visit리스트를 이용하여 다시 풀었는데 위 코드도 60%에서 시간초과가 났다...
    -pypy3로 제출하니까 정답처리가 되었다.ㅋㅋㅋㅋㅋ

0개의 댓글