C. 清除路障(block)

    传统题 文件IO:block 1000ms 256MiB

清除路障(block)

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

【题目描述】

在一个一维坐标轴上有 nn 个点,坐标分别为 1,2,...,n1,n1,2,...,n-1,n
初始的时候每个点上都有一个障碍物,坐标为 ii 上的障碍物坚固程度为 aia_i
现在小A有 mm 次操作或者询问:

  1. 将坐标为 pp 上的障碍物的坚固程度减去 xx,若减去后该障碍物的坚固程度小于等于0,则该障碍物消失。
  2. 询问若一个人从坐标为 pp 的位置向右走,他最多可以到达哪个位置?(如果碰到障碍物或者到达坐标点 nn 则停止向右走)

【输入格式】

从文件block.in中读入数据。

  • 第一行两个整数 n,mn,m
  • 第二行 nn 个整数 a1ana_1\sim a_n
  • 接下来 mm 行,每行三个整数或者两个整数,表示操作或者询问。
  • 若该行第一个数为 11,后面会接着两个整数 p,xp,x,表示操作。
  • 若该行第一个数为 22,后面会接着一个整数 pp,表示询问。

【输出格式】

输出到文件block.out中。

  • 输出若干行,对于每一个询问操作,输出对应的答案。

【输入样例 1】

5 4
1 2 3 4 5
2 3
1 3 3
2 2
2 3

【输出样例 1】

3
2
4

【输入输出样例 2】

block2.inblock2.ans

【数据范围与约定】

  • 对于测试点 141\sim 4:$1\le n,m\le 3000,1\le a_i\le 10^9,1\le p \le n,1\le x \le 10^9$。
  • 对于测试点 565\sim 6:$1\le n\le 10^6,2\le m \le 10^6,,1\le p \le n,1\le x \le 10^9$,前 m1m-1 次都是操作,第 mm 次是询问。
  • 对于测试点 7127\sim 121n,m106,ai=1,1pn,x=11\le n,m\le 10^6,a_i=1,1\le p \le n,x=1
  • 对于测试点 132013\sim 20:$1\le n,m\le 10^6,1\le a_i\le 10^9,1\le p\le n,1\le x\le 10^9$。

CSP-JS模拟赛4

未参加
状态
已结束
规则
OI
题目
4
开始于
2025-9-30 18:30
结束于
2025-10-4 0:00
持续时间
3.5 小时
主持人
参赛人数
14