一次调度不改变水位总量,只是把 1 单位水从一块田移到另一块田。因此:
中间已在 [l,r] 内的田既不必补也不必削。
农业试验站有 n 块试验田,第 i 块当前水位为 ai。一次调度可以从一块田抽出 1 单位水,并立刻灌入另一块田。灌溉规程要求最终每块田的水位都落在闭区间 [l,r] 内。若无论怎样调度都无法满足规程,答案为 −1;否则求最少调度次数。
约束:测试组数不超过 103,单组 2≤n≤2×105,且所有测试中 n 之和不超过 2×105。1≤l≤r≤1000000000,1≤ai≤1000000000。
第一行一个正整数 t,表示测试组数。 对每组测试:第一行三个正整数 n、l、r;第二行 n 个正整数 a1,a2,…,an。 保证 1≤t≤103,2≤n≤2×105,1≤l≤r≤1000000000,1≤ai≤1000000000,且所有 n 之和不超过 2×105。
By signing up a CodeFun2000 universal account, you can submit code and join discussions in all online judging services provided by us.