dskang107   2년 전

시간초과랑 런타임 오류 많이 떠서 해결 해봤는데 결국에는 컴파일 오류가 떴습니다...

출력은 제대로 되는데 뭐가 문제인지 알려주시면 감사하겠습니다..

bjh3502   2년 전

입력되는 단어의 길이가 1'000'000 까지이므로, 최소한 1'000'001개의 char[]를 선언해주셔야 합니다.

또한, 13라인의 strlen(s)는 O(N)인데, 이를 for문의 조건부에 넣게되면 반복문이 한바퀴 돌때마다 strlen()을 호출하여 총 N번 호출하게 되고,

N=1'000'000인 문제에서 O(N^2)의 복잡도가 나와 시간초과가 나오게 됩니다.

문자열의 길이가 변하는 문제가 아니므로 for문 밖에서 미리 strlen을 별도의 변수에 저장하여, 이를 조건부에 두는 방식으로 해결할 수 있습니다.


댓글을 작성하려면 로그인해야 합니다.