"알고리즘은 잘 동작하는것 같습니다."
이 말은 어떻게 보면 맞고, 어떻게 보면 틀립니다.
1. '알고리즘'이 '그냥 답은 나온다'는 뜻인 경우: 맞습니다. 하지만 시간이 오래 걸리는 것과는 무관합니다.
2. '알고리즘'이 '투 포인터'인 경우: 맞습니다. 하지만 그렇기 때문에 O(nm)이라 당연히 시간 초과가 됩니다.
3. '알고리즘'이 '이분 탐색'인 경우: 틀립니다. 이분 탐색이 되려면 middle에서 찾는 걸 실패했을 때 [start, middle) 또는 (middle, end]로 가야 하는데 이 코드는 [start, end-1] 또는 [start+1, end]로 가고 있기 때문입니다.
p_ce1052 4년 전
왜 시간초과가 날까요? 재귀함수로 짠게 문제일까요? 알고리즘은 잘 동작하는것 같습니다.