#P17154. [ICPC 2017 Xi'an R] Acedia

    ID: 19432 远端评测题 30000ms 512MiB 尝试: 0 已通过: 0 显示难度省选/NOI− 上传者: 标签>2017莫队树状数组枚举扫描线ICPC西安

[ICPC 2017 Xi'an R] Acedia

题目描述

给定一个包含 nn 个数的序列,第 kk 个数为 a[k]a[k]。

你需要回答 mm 个询问。

每个询问的要求是:对于 kk 从 11 到 1010 的每一个值,计算区间 [l,r][l,r] 中满足条件的对 (x,x+k−1)(x, x+k-1) 的数量。

我们称一对 (x,y)(x,y) 是 有效的,当且仅当:

  1. 对于从 xx 到 yy 的每一个 ii,区间 [l,r][l,r] 中至少存在一个元素等于 ii;
  2. 区间 [l,r][l,r] 中不存在等于 x−1x-1 或 y+1y+1 的元素。

输入格式

输入包含多组测试数据。

第一行包含一个整数 TT (1≤T≤5)(1 \le T \le 5),表示测试数据的组数。

对于每组测试数据:

第一行包含两个整数 n,mn, m (1≤n,m≤1000000)(1 \le n,m \le 1000000)。

接下来一行包含 nn 个整数,依次表示 a[1],…,a[n]a[1],\dots, a[n] (0≤a[i]≤2000000000)(0 \le a[i] \le 2000000000)。

随后的 mm 行,每行包含两个整数 l,rl, r,表示一个针对区间 [l,r][l,r] 的询问 (1≤l≤r≤n)(1 \le l \le r \le n)。

输出格式

对于每个询问,你需要输出 1010 个数。为减少输出量,只需将每个数对 1010 取模后输出,中间不加空格。

对于每组测试数据,输出 mm 行。第 kk 行包含一个长度为 1010 的字符串,表示第 kk 个询问的答案。

1
5 5
1 2 4 5 6
1 5
1 2
3 4
3 5
4 5
0110000000
0100000000
0100000000
0010000000
0100000000

提示

翻译由 DeepSeek V4 Pro 完成