아름다운 수열

시간 제한1초메모리 제한1024 MB

요약
양의 정수 배열에서 길이가 K 이상인 모든 연속 부분 수열 가운데 제곱합을 합으로 나눈 값의 최댓값을 구한다.
난이도

어려움10점 중 8점

유형
이분 탐색, 누적 합, 수학, 그리디
정답자
아직 제출이 없습니다

문제

현서는 수열을 좋아한다. 현서는 다음 값을 수열 A_1,A_2,...,A_nA\_{1}, A\_{2}, ..., A\_{n}의 아름다운 정도라고 생각한다.

A_12+A_22+...+A_n2A_1+A_2+...+A_n\dfrac{A\_{1}^{2} + A\_{2}^{2} + ... + A\_{n}^{2}}{A\_{1} + A\_{2} + ... + A\_{n}}

즉, 모든 원소의 제곱의 합을 모든 원소의 합으로 나눈 값이다.

주원이는 길이 NN인 수열을 하나 가지고 있다. 주원이는 이 수열의 연속된 부분을 잘라 현서에게 선물로 주려고 한다.

수열이 너무 짧으면 현서가 실망할 수 있으니 연속된 부분의 길이는 KK 이상이 되어야 한다.

이때 주원이가 만들 수 있는 수열의 아름다운 정도의 최댓값을 출력하라.

입력

첫 번째 줄에 정수 NN, KK가 공백으로 구분되어 주어진다.

두 번째 줄에 주원이가 가지고 있는 수열 A_1,A_2,...,A_NA\_{1}, A\_{2}, ..., A\_{N}이 공백으로 구분되어 주어진다.

출력

주원이가 만들 수 있는 수열의 아름다운 정도의 최댓값을 출력하라. 정답과의 절대 오차 또는 상대 오차가 10−610^{-6} 이하인 경우 정답으로 인정된다. 즉, 출력한 값을 uu, 정답을 u′u'라고 했을때 다음을 만족할때만 정답이다. ∣u−u′∣max⁡(1,∣u′∣)≤10−6.\frac{|u - u'|}{\max(1, |u'|)} \le 10^{-6}\text{.}

제한

  • 주어지는 수는 모두 정수이다.
  • 1≤N≤100,0001 \leq N \leq 100\\,000
  • 1≤K≤N1 \leq K \leq N
  • 1≤i≤N1 \le i \le N 인 각 ii 에 대하여: 1≤A_i≤1,000,0001 \leq A\_{i} \leq 1\\,000\\,000

예제2

  1. 예제 1

    입력
    3 1
    10 8 14
    
    예상 출력
    14
    
  2. 예제 2

    입력
    3 2
    2 1 2
    
    예상 출력
    1.800000