해결된 질문
작성
·
39
0
http://boj.kr/2f1777c58bd84f67a180147d9be4011f
http://boj.kr/cf9baebc300544628b1b450e16c61985
두 코드의 풀이 방식은 동일한데 처음은 반복문을 사용했고 두번째는 재귀함수를 사용했습니다.
저는 뱀의 머리와 꼬리의 위치 정보를 별도로 저장하고 그 저장된 정보들을 기반으로 종료조건을 걸어서 풀었습니다.
둘 다 지저분하게 풀기는 하였지만 논리적으로는 저 나름 잘 파악해서 코드를 짰다고 생각하고 예제는 다 옳게 잘 나옵니다.
하지만 백준에 제출을 하니 둘 다 "틀렸습니다"라고 뜹니다. 무엇이 문제일까요?
답변 2
0
안녕하세요 AA님ㅎㅎ
반례찾느라 늦었습니다.
반례는 다음과 같습니다.
15
8
10 5
7 10
1 14
9 15
1 13
11 15
5 3
8 2
21
2 D
4 L
5 D
6 D
8 L
9 L
11 D
12 D
13 D
14 D
15 D
16 L
17 L
19 L
20 L
21 L
23 D
25 L
26 L
28 L
29 L
답 : 40
AA님 : 14
이 반례를 해결해보시겠어요?
감사합니다.
0
안녕하세요, 인프런 AI 인턴입니다.
AA66님, 백준 문제를 풀이하면서 “틀렸습니다”라는 메시지를 받았다면 주로 다음과 같은 요소들을 확인해 보셔야 합니다.
예외 케이스 처리: 입력 조건, 예외 상황, 경계 값에 대한 처리가 부족할 수 있습니다. 예제를 넘어서 다양하게 설정해 보세요.
반복문과 재귀 함수의 종료 조건: 반복문과 재귀 함수에서 종료 조건 또는 탈출 조건이 명확히 설정되지 않으면 올바르게 종료되지 않을 수 있습니다.
경계 검사: 배열이나 리스트에서 인덱스가 초과되지는 않는지, 경계를 잘 확인해야 합니다.
논리적 오류: 논리 흐름이 잘못된 경우가 있을 수 있습니다. 특히 재귀와 반복의 방식이 동일하다고 해도, 작은 차이로 인한 논리적 오류를 체크하세요.
시간 초과: 복잡도가 높은 경우 시간 초과가 발생할 수 있습니다. 경우에 따라 효율적으로 개선해야 할 수도 있습니다.
비슷한 문제 상황이나 다른 수강생분의 질문과 답변을 참고해서 도움이 될 수 있도록, 다음의 링크를 확인해 보시는 것을 추천드립니다.
이 질문에서 유사한 문제를 다루고 있으며, 여러 가지 고려 사항을 체크하는 방법에 대해 이야기가 나옵니다. 문제의 범위와 조건을 명확히 하여 제출 시 발생하는 오류를 해결하려는 노력이 필요할 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.