dmsrkd1216   10달 전

안녕하세요. 파이썬으로  코드를 작성했습니다.

코드 수행 결과는 20%대에서 런타임에러가 떴습니다. 코드 리뷰 부탁드립니다.

그리고 제가 푼 접근방법이 올바른지 확인해주신다면 감사드리겠습니다.

또는 제가 문제 조건에서 놓치고 있는 부분이 있는지, 반례예시를 덧글로 남겨주신다면 정말 감사드리겠습니다.

[접근방법]

1. 먼저 DFS로 섬번호를 부여했습니다.

2. 큐 두개를 사용하여 두차례의 BFS를 실행했습니다.

(2-1) bfs1()함수와 큐 q1: 바다(0)와 인접한 위치를 저장하고, 바다와 인접한 위치를 시작점으로 다른섬이 나올때까지의 거리를 구했습니다.

그리고 그 거리들중 가장 짧은 거리를 구하는 식으로 되어있습니다.

(2-2) bfs2()함수와 큐 q2: q1의 원소에서 다른섬번호가 나올때까지의 거리를 구하는데 사용했습니다.

wider93   10달 전

일단 제가 실행했을 때 런타임 에러는 이런 데이터에서 나타나네요.

6
1 1 0 1 0 0
0 0 0 1 0 1
0 0 1 1 0 0
1 1 0 0 0 1
1 1 1 0 1 1
0 1 1 1 1 0

그리고 통과를 못 할 정도는 아닌데, 한 점마다 bfs를 수행해서 그런지 유독 오래 걸리는 데이터들이 좀 있습니다.

댓글을 작성하려면 로그인해야 합니다.