10223번 - Fertilizing
콩나물[1]부터 콩나물[C[i]]까지 i만큼 증가시킨 뒤에,
콩나물[1]부터 콩나물[C[i]]까지의 배열을 Arr1
콩나물[C[i]+1]부터 콩나물[1]보다 작은 값이 보이면 거기서부터,
콩나물[C[i]]의 값보다 큰 값이 나올 때까지의 배열을 Arr2라고 할게용
Arr1과 Arr2를 소트(이 부분은 Arr1과 Arr2가 둘다 정렬되어있기 때문에 Arr1과 Arr2의 길이 시간만큼 걸리니깐)
이걸 D만큼 반복하면
O(N*D)시간 안에 해결하는 알고리즘을 구현했는데
자꾸 시간초과가 뜨네용.
더 효율적인구현 방법이 있나요?
댓글을 작성하려면 로그인해야 합니다.
mendou12 8년 전
콩나물[1]부터 콩나물[C[i]]까지 i만큼 증가시킨 뒤에,
콩나물[1]부터 콩나물[C[i]]까지의 배열을 Arr1
콩나물[C[i]+1]부터 콩나물[1]보다 작은 값이 보이면 거기서부터,
콩나물[C[i]]의 값보다 큰 값이 나올 때까지의 배열을 Arr2라고 할게용
Arr1과 Arr2를 소트(이 부분은 Arr1과 Arr2가 둘다 정렬되어있기 때문에 Arr1과 Arr2의 길이 시간만큼 걸리니깐)
이걸 D만큼 반복하면
O(N*D)시간 안에 해결하는 알고리즘을 구현했는데
자꾸 시간초과가 뜨네용.
더 효율적인구현 방법이 있나요?