CFCF2206E.Parallel Sums
提高+/省选-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
给定两个整数 n 和 m。对于一个长度为 n 的整数序列 A=(a1,a2,…,an),它的平行和定义为 n−m+1 个整数 s1,s2,…,sn−m+1,其中 si=ai+ai+1+…+ai+m−1,对于每个 i 满足 1≤i≤n−m+1。
现已给定 s1,s2,…,sn−m+1 的具体值。你需要回答 q 个询问,每个询问如下:对于第 j 个询问,给定两个整数 lj 和 rj,请你在所有符合条件的 A=(a1,a2,…,an)(注意 ai 可以为负)中,找出区间 alj,alj+1,…,arj 的最大值的最小可能取值。或者判断该最大值可以无限变小。
输入格式
第一行输入两个整数 n 和 m,满足 1≤m≤n≤200000。
第二行输入 n−m+1 个整数 s1,s2,…,sn−m+1,满足 −109≤si≤109。
第三行输入一个整数 q,满足 1≤q≤100000。
接下来的 q 行,每行输入两个整数 lj 和 rj,满足 1≤lj≤rj≤n。
输出格式
输出 q 行。第 j 行输出第 j 个询问的最小可能最大值。如果这个值可以无限变小,输出 unbounded。
输入输出样例
输入#1
8 4 4 -4 2 6 5 4 3 7 4 6 1 8 2 5
输出#1
2 unbounded 4 -1
说明/提示
样例输入输出 #1 解析:
对于第一个询问,可以取 A=(9,−4,−3,2,1,2,1,1),平行和为 (4,−4,2,6,5),满足要求。此时 max(a3,…,a7)=max(−3,2,1,2,1)=2,且可以证明 2 是最小可能值。
对于第二个询问,可以让该值任意小。
对于第三个询问,可以取 A=(4,−3,0,3,−4,3,4,2),此时整个序列的最大值是 4,这是最小可能值。