인프런 커뮤니티 질문&답변
2234 성곽 질문입니다.
작성
·
300
0
http://boj.kr/5903156a595c4c0db705ae5c117abc87
제 코드입니다.
컴포넌트를 bfs로 찾는 등 코드의 비효율적인 면은 있지만,
로직은 틀리지 않았다고 생각했는데 WA를 받았습니다.
어떤 부분에서 로직이 잘못됐는지를 못찾고 있습니다.
답변 1
0
큰돌
지식공유자
안녕하세요 완섭님 ㅎㅎ
반례입니다.
4 1
15 15 11 14
답 : 3 2 3
완섭님 코드 : 3 1 3
또 질문 있으시면 언제든지 질문 부탁드립니다.
감사합니다.
강사 큰돌 올림.
큰돌
지식공유자
1700문제 정도 풀면.. 적당히 생기기도 합니다.. 하하
문제를 풀 때 이런 반례도 내가 체크했나? 하면서 확인하는게 중요합니다.
보통은 최대, 최소, 그리고 맵 전체를 0으로 한다던가, 1로 한다던가 식은 무조건 생각하셔야 해요.
예를 들어 문제에서 0 ~ 10이라는 범위를 가지고 있다면 0과 10은 반드시 체크해야 하는 것이죠.






정말 감사드립니다. 이상한 곳에서 틀려있었네요.
그런데 큰돌님, 하나 질문이 있습니다. 이런 반례들을 찾는 어떤 노하우가 있으신가요? 아니면 단순한 직관이신가요? 매번 커다란 알고리즘의 로직은 대략적으로 맞는데 인덱싱이나 행과 열을 바꾼 아주 작은 실수들은 발견하기가 너무 어려워서 이런데에 오히려 시간을 많이 쏟고 있습니다. 그래서 사실 끝까지 물고 늘어지다가 정 안되면 큰돌님께 도움을 청하는데, 큰돌님은 제가 하루종일 잡고 있던걸 순식간에 답해주시더라구요. 혹시 이와 관련하여 얻을 수 있는 조언이 있을까요?
매번 귀찮은 질문에도 친절히 답해주셔서 감사합니다./