처음에는 O(N^2) 풀이로 풀었다가 틀렸습니다 가 나와서 아래의 O(N) 풀이를 고안해봤습니다만, 여전히 틀렸습니다 가 뜹니다. 시간초과가 아니기에 논리에 문제가 있는 것 같은데, ai의 도움을 받아봐도 도무지 알 수가 없습니다. 도와주시면 감사하겠습니다.
풀이 요약: arr는 문자열을 저장하는 배열, max_ind는 i부터 끝까지의 문자열 중 가장 큰 문자의 인덱스입니다. 역순으로 배열을 순회하여 각 위치별 최대의 인덱스를 O(N)으로 찾은 후, 다시 앞에서부터 O(N)으로 순회하여 현재가 최대보다 작을 경우 reverse, break을 하여 총 O(2N) 즉 O(N)으로 해결을 한다는 논리입니다.
thomas1011 5달 전 0
처음에는 O(N^2) 풀이로 풀었다가 틀렸습니다 가 나와서 아래의 O(N) 풀이를 고안해봤습니다만, 여전히 틀렸습니다 가 뜹니다. 시간초과가 아니기에 논리에 문제가 있는 것 같은데, ai의 도움을 받아봐도 도무지 알 수가 없습니다. 도와주시면 감사하겠습니다.
풀이 요약: arr는 문자열을 저장하는 배열, max_ind는 i부터 끝까지의 문자열 중 가장 큰 문자의 인덱스입니다. 역순으로 배열을 순회하여 각 위치별 최대의 인덱스를 O(N)으로 찾은 후, 다시 앞에서부터 O(N)으로 순회하여 현재가 최대보다 작을 경우 reverse, break을 하여 총 O(2N) 즉 O(N)으로 해결을 한다는 논리입니다.