5430번 - AC
배열을 만드려면 split은 당연히 해야하는 것이고
함수 p 길이만큼 상수시간씩 수행하고
남겨진 배열 back-front만큼 문자열 붙이는
시간이 많이 걸릴부분이 없어보이는데
당최 왜 시간초과가 날까요? ㅂㄷㅂㄷ
result 문자열을 만들어가는 과정이 문제이지 않을까 싶습니다. 자바에서 String 객체는 immutable 하기 때문에, += 을 할 때마다 두 문자열의 내용을 완전히 다른 곳에 새로 복사해야 됩니다. 즉, +=을 n번 수행하는 시간 복잡도는 n^2이나 됩니다. 배열에 들어있는 수가 10만개까지 되니, 한 번의 테스트 케이스로도 충분히 시간 초과가 날 수 있습니다. result도 StringBuilder로 하면 되지 않을까 싶습니다.
감사합니다 ㅜ
덕분에 해결했습니다^^
댓글을 작성하려면 로그인해야 합니다.
junghun9102 6년 전 1
배열을 만드려면 split은 당연히 해야하는 것이고
함수 p 길이만큼 상수시간씩 수행하고
남겨진 배열 back-front만큼 문자열 붙이는
시간이 많이 걸릴부분이 없어보이는데
당최 왜 시간초과가 날까요? ㅂㄷㅂㄷ