강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

박완섭님의 프로필 이미지
박완섭

작성한 질문수

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

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은 반드시 체크해야 하는 것이죠.

박완섭님의 프로필 이미지
박완섭
질문자

감사합니다.. 1700..ㅋㅋ 사족인데 유튜브 커뮤니티에 힘들어하시는 걸 봤습니다. 저한텐 최고의 명강의고 가장 친절하신 강사입니다. 항상 응원드립니다.

큰돌님의 프로필 이미지
큰돌
지식공유자

감사합니다. ㅎㅎ 큰 힘이 됩니다.

박완섭님의 프로필 이미지
박완섭

작성한 질문수

질문하기