소가 먹어버린 숙제

시간 제한2초메모리 제한512 MB

요약
소가 먹은 접두사 길이 K마다 남은 점수에서 최솟값 하나를 제거한 평균을 구하고, 그 평균이 최대가 되는 K를 모두 오름차순으로 출력한다.
난이도

보통10점 중 6점

유형
배열, 누적 합, 정렬, 그리디
정답자
아직 제출이 없습니다

문제

소 역사 수업에서 문제가 NN개 (3≤N≤100,0003 \leq N \leq 100{,}000)인 긴 숙제를 받았다. 각 문제의 점수는 0 이상 10,000 이하의 정수다. 선생님은 흔히 그러듯 점수가 가장 낮은 문제 하나를 버리고 나머지 점수를 평균 내어 최종 성적을 매길 계획이다. 그런데 기르던 소 베시가 앞의 KK개 문제에 쓴 답을 먹어버렸다. KK는 1만큼 작을 수도 있고 N−2N-2만큼 클 수도 있다.

한참을 설명한 끝에 선생님은 이 이야기를 믿어 주었고, 먹히지 않고 남은 부분을 앞서와 같은 방식으로 채점하기로 했다. 즉 남은 문제 중 점수가 가장 낮은 문제 하나를 (그런 문제가 여럿이면 그중 하나를) 빼고 나머지 점수를 평균 낸다.

이 채점 방식에서 최종 성적을 가장 크게 만드는 KK를 모두 오름차순으로 출력하라.

입력

첫째 줄에 NN이 주어진다. 둘째 줄에 숙제 문제 NN개의 점수가 순서대로 주어진다.

출력

최종 성적을 최대로 만드는 KK를 한 줄에 하나씩, 오름차순으로 출력한다.

힌트

점수가 3, 1, 9, 2, 7인 경우를 보자. 베시가 앞의 두 문제를 먹으면 남은 점수는 9, 2, 7이다. 최솟값을 빼고 평균을 내면 최종 성적은 8이고, 이 값이 가능한 최대다.

예제5

  1. 예제 1

    입력
    5
    3 1 9 2 7
    
    예상 출력
    2
    
  2. 예제 2

    입력
    3
    0 0 0
    
    예상 출력
    1
    
  3. 예제 3

    입력
    4
    5 5 5 5
    
    예상 출력
    1
    2
    
  4. 예제 4

    입력
    5
    1 2 3 4 5
    
    예상 출력
    3
    
  5. 예제 5

    입력
    5
    5 4 3 2 1
    
    예상 출력
    1