2188번 - 축사 배정
반례는 아래입니다. 정답은 39이지만, 38을 출력하는 반례가 존재했습니다. 하지만, 아무리 코드를 리뷰해보고 디버깅을 해보아도
로직적으로 어떤 문제가 있는지 보이지않고있습니다. (다른 이분매칭 풀이로는 통과하였지만, 이 코드도 통과못할 이유를 찾고싶습니다.)
반례는 다른분의 도움을 통해 프로그램을 돌려서 찾았는데.. 제 코드에 어떤부분때문에 틀린답이 나올까요?
[input]
50 402 24 212 39 394 30 31 15 182 21 34 21 40 39 301 205 20 30 4 29 253 39 9 331 325 27 22 36 2 111 95 35 29 14 38 13 28 22 14 18 20 29 223 5 11 383 36 30 365 9 17 35 10 193 18 31 73 4 36 304 24 12 9 144 28 2 2 273 13 16 23 6 37 394 5 26 15 163 25 6 362 9 314 17 6 7 175 27 4 13 29 301 11 125 3 1 38 8 53 14 12 123 17 39 123 30 15 262 21 33 7 6 112 28 132 25 163 19 16 161 135 39 24 34 29 332 40 103 6 35 401 372 24 354 11 22 3 293 19 7 161 141 385 31 14 28 19 6
혹시 소가 방문했는지 가리키는 visited 배열 매번 초기화해보시겠어요? 저도 잘은 이해되진 않는데 dfs 돌릴때마다 visited 배열을 false로 초기화해줘야 되더라구요
댓글을 작성하려면 로그인해야 합니다.
qktlf789456 2년 전
반례는 아래입니다. 정답은 39이지만, 38을 출력하는 반례가 존재했습니다. 하지만, 아무리 코드를 리뷰해보고 디버깅을 해보아도
로직적으로 어떤 문제가 있는지 보이지않고있습니다. (다른 이분매칭 풀이로는 통과하였지만, 이 코드도 통과못할 이유를 찾고싶습니다.)
반례는 다른분의 도움을 통해 프로그램을 돌려서 찾았는데.. 제 코드에 어떤부분때문에 틀린답이 나올까요?
[input]
50 40
2 24 21
2 39 39
4 30 31 15 18
2 21 3
4 21 40 39 30
1 20
5 20 30 4 29 25
3 39 9 33
1 32
5 27 22 36 2 11
1 9
5 35 29 14 38 1
3 28 22 1
4 18 20 29 22
3 5 11 38
3 36 30 36
5 9 17 35 10 19
3 18 31 7
3 4 36 30
4 24 12 9 14
4 28 2 2 27
3 13 16 2
3 6 37 39
4 5 26 15 16
3 25 6 36
2 9 31
4 17 6 7 17
5 27 4 13 29 30
1 1
1 12
5 3 1 38 8 5
3 14 12 12
3 17 39 12
3 30 15 26
2 21 3
3 7 6 11
2 28 13
2 25 16
3 19 16 16
1 13
5 39 24 34 29 33
2 40 10
3 6 35 40
1 37
2 24 35
4 11 22 3 29
3 19 7 16
1 14
1 38
5 31 14 28 19 6