有 n nn 个蹦床排成一列,每个蹦床有一个弹力值 s i s_isi
每一轮的最开始,Pekora 会选择一个蹦床作为她的起点(任意一个蹦床都可以作为起点)。当她在蹦床 i ii 时,她会跳到蹦床 i + s i i+s_ii+si 上,并且 s i s_isi 会变为 m a x ( 1 , s i − 1 ) max(1,s_i-1)max(1,si−1)(也就是说,蹦床每被跳一次弹力值就会减一,直到弹力值为 1 11)。当她跳到了第 n nn 个蹦床的后面时,该轮结束。
现在,Pekora 想要把所有的 s i s_isi 都变成 1 11,问最少要多少轮才能实现这个目标
输入格式
本题有多组数据
第一行一个整数 T TT,表示数据的组数
对于每组数据:
第一行一个整数 n nn,表示蹦床的个数
第二行 n nn 个整数,分别为 s 1 … n s_{1\dots n}s1…n
输出格式
共T TT 行,每行一个整数表示该组数据的答案
说明与提示
1 ≤ T ≤ 500 1 \le T \le 5001≤T≤500
∑ n ≤ 5000 \sum n \le 5000∑n≤5000
1 ≤ s i ≤ 1 0 9 1 \le s_i \le 10^91≤si≤109
版权声明:本文为Brian_Pan_原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。