#L5055. 「JOISC 2025 Day4」外郎饼

    ID: 3950 传统题 1000ms 256MiB 尝试: 1 已通过: 1 难度: 10 上传者: 标签>贪心其他二分查找数据结构ST表前缀和前缀和值域分解区间查询

「JOISC 2025 Day4」外郎饼

#5055. 「JOISC 2025 Day4」外郎饼

题目译自 JOISC 2025 Day4 T3 「ういろう / Uiro」

题目描述

葵手中有 NN 张卡片,编号从 11NN,每张卡片上写着一个正整数,卡片 ii (1iN1 \leq i \leq N) 上的数字是 AiA_i

她打算用这些卡片和一块黑板玩 QQ 次游戏。第 jj (1jQ1 \leq j \leq Q) 次游戏的规则如下:

  1. 在黑板上写下 00
  2. 将卡片 Lj,Lj+1,,RjL_j, L_j+1, \ldots, R_j 按顺序从左到右排在桌上。
  3. 重复以下操作 RjLj+1R_j - L_j + 1 次,第 kk (1kRjLj+11 \leq k \leq R_j - L_j + 1) 次操作如下:
    • 设黑板当前数字为 xx,桌上从左第 kk 张卡片的数字为 yy
    • 擦掉 xx,写上 x+yx + yxyx - y
    • 若写 xyx - y,葵吃一块外郎饼(一种和菓子)。
    • 注意:黑板数字不能小于 00

你想知道每次游戏中葵最多能吃多少块外郎饼。给定卡片和游戏信息,编写程序计算答案。

输入格式

第一行包含一个整数 NN

第二行包含用空格分隔的 NN 个整数 A1,A2,,ANA_1, A_2, \ldots ,A_N

第三行包含一个整数 QQ

接下来的 QQ 行,每行包含两个整数 Li,RiL_i,R_i

输出格式

输出 QQ 行,第 jj (1jQ1 \leq j \leq Q) 行为第 jj 次游戏中葵最多能吃的外郎饼数。

样例 1

输入

5
3 4 7 2 8
2
1 3
4 4

输出

1
0

解释
11 次游戏中,以下情况是可能的:

  • 最初,在黑板上写下 00
  • 接下来,在桌子上将卡片 1,2,31, 2, 3 按此顺序从左到右排成一列。
  • 当前黑板上写的整数是 00,桌子上排列的卡片列中从左数第 11 张卡片上写的整数是 33。擦去黑板上的 00,在黑板上写下 33
  • 当前黑板上写的整数是 33,桌子上排列的卡片列中从左数第 22 张卡片上写的整数是 44。擦去黑板上的 33,在黑板上写下 77
  • 当前黑板上写的整数是 77,桌子上排列的卡片列中从左数第 33 张卡片上写的整数是 77。擦去黑板上的 77,在黑板上写下 00。吃掉一块外郎饼。

此时,在第 11 次游戏中葵吃到的外郎饼数量为 11 个。可以证明,在第 11 次游戏中葵无法吃到 22 个以上的外郎饼。因此,输出 11

22 次游戏中,以下情况是可能的:

  • 最初,在黑板上写下 00
  • 接下来,在桌子上排列卡片 44
  • 当前黑板上写的整数是 00,桌子上排列的卡片列中从左数第 11 张卡片上写的整数是 22。擦去黑板上的 00,在黑板上写下 22

此时,在第 22 次游戏中葵吃到的外郎饼数量为 00 个。可以证明,在第 22 次游戏中葵无法吃到 11 个以上的外郎饼。因此,输出 00

这个样例满足子任务 1,2,3,4,6,71,2,3,4,6,7 的限制。

样例 2

输入

14
1 2 2 1 2 1 1 2 1 2 2 1 1 1
5
1 2
1 14
5 11
3 12
4 7

输出

0
8
4
6
2

解释
11 次游戏中,以下情况是可能的:

  • 最初,在黑板上写下 00
  • 接下来,在桌子上将卡片 1,21, 2 按此顺序从左到右排成一列。
  • 当前黑板上写的整数是 00,桌子上排列的卡片列中从左数第 11 张卡片上写的整数是 11。擦去黑板上的 00,在黑板上写下 11
  • 当前黑板上写的整数是 11,桌子上排列的卡片列中从左数第 22 张卡片上写的整数是 22。擦去黑板上的 11,在黑板上写下 33

此时,在第 11 次游戏中葵吃到的外郎饼数量为 00 个。可以证明,在第 11 次游戏中葵无法吃到 11 个以上的外郎饼。因此,输出 00

这个样例满足所有子任务的限制。

样例 3

输入

8
16 23 45 76 43 97 12 43
7
1 8
3 7
2 7
4 5
5 8
2 6
3 5

输出

3
2
2
1
2
2
1

这个样例满足子任务 1,2,3,4,71,2,3,4,7 的限制。

数据范围与提示

对于所有输入数据,满足:

  • 1N2000001 \leq N \leq 200000
  • 1Ai1001 \leq A_i \leq 100 (1iN1 \leq i \leq N)
  • 1Q2000001 \leq Q \leq 200000
  • 1LjRjN1 \leq L_j \leq R_j \leq N (1jQ1 \leq j \leq Q)
  • 所有输入为整数

详细子任务附加限制及分值如下表所示。

子任务 分值 附加限制
1 3 N20N \leq 20, Q20Q \leq 20
2 5 N300N \leq 300, Q20Q \leq 20
3 7 N5000N \leq 5000, Q20Q \leq 20
4 15 Q20Q \leq 20
5 21 Ai2A_i \leq 2 (1iN1 \leq i \leq N)
6 29 Ai20A_i \leq 20 (1iN1 \leq i \leq N)
7 20 无附加限制