检讨
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
Special Judge, 64bit IO Format: %lld

题目描述

清晨六点,鹿贤惠同学顶着乱糟糟的头发冲出宿舍大门参加早操,却发现宿舍门口的炸鸡上被安装了快乐检测仪。

每天晚上你刷脸通过炸鸡时,检测仪会记录一个整数 a_i 表示你i回寝后的快乐值。

旁边还张贴着通告:


“仵学长会不定期抽查一段连续若干天的记录。如果哪位同学这段日子的 平均快乐值 太低,就要写检讨!”

鹿同学当然不想写检讨,于是他偷偷下载到自己最近的快乐值数据,决定先算一下自己的最大平均快乐值是多少。

鹿同学搞到的数据是一个数组 a(长度为 n),他需要在所有长度 ≥ L 的连续子数组中,找出它们的最大平均快乐值,并输出该最大值。

  • 平均快乐值:一段连续天数内所有 a_i 的算术平均数。
  • 输出误差:允许的绝对误差或相对误差不超过 1×10-5

形式化描述

给定整数 n, L\;(1\le L\le n\le 2\times10^{5}) 和数组 a_1,a_2,\ldots ,a_n ( -10^{4}\le a_i\le 10^{4}),求


\max_{1\le i\le j\le n,\;j-i+1\ge L}\;\frac{\displaystyle\sum_{k=i}^{j} a_k}{\,j-i+1\,},

并输出该最大值,答案允许的绝对或相对误差 ≤ 10-5

输入描述:

第一行一个整数 t (1 ≤ t ≤ 10) — 测试组数量。
接下来每组数据两行:

1. 两个整数 nL (1 ≤ L ≤ n ≤ 2 × 10^5)
2. n 个整数 a_1, a_2, …, a_n (-10^4 ≤ a_i ≤ 10^4)

保证所有测试组的 n 之和不超过 2 × 10^5

输出描述:

对每个测试组输出一行一个实数,表示所求最大平均幸福值。
若你的输出与标准答案的绝对或相对误差不超过 1 × 10^{-5},即可视为正确。
示例1

输入

复制
2
5 2
1 12 -5 -6 50
3 1
-1 -2 -3

输出

复制
22.00000
-1.00000

说明

样例 1
选择子数组 [-6, 50](第 4 ~ 5 天),和为 44,长度 2,平均值 22,为所有长度 ≥ 2 子数组中的最大值。
样例 2
必须至少取一天,最佳选择是单独的 -1,平均值 -1