C. 区间改数

    传统题 1000ms 256MiB

区间改数

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

区间平方根操作

题目描述

给定一个长度为 nn 的整数数组 aa,以及 qq 次区间操作。

每次操作给定一个区间 [l,r][l,r],需要对所有满足 lirl \le i \le r 的下标 ii 执行如下更新:

$$a[i] = \left\lfloor \sqrt{abs(a[i]-1000)} +1000\right\rfloor $$

其中 x\lfloor x \rfloor 表示对 xx 向下取整。

abs(x)abs(x)表示x的绝对值,即: 若(x<0) abs(x)=-x; 否则 abs(x)=x;

请在依次执行完所有 qq 次操作后,输出最终的数组 aa


输入格式

  • 第一行包含两个整数 n,qn, q,分别表示数组长度和操作次数。
  • 第二行包含 nn 个非负整数 a1,a2,,ana_1, a_2, \dots, a_n,表示初始数组。
  • 接下来 qq 行,每行包含两个整数 l,rl, r,表示一次区间操作。

输出格式

输出一行,包含 nn 个整数,表示所有操作完成后的数组。相邻整数之间用一个空格分隔。


数据范围

  • 1n5×1051 \le n \le 5 \times 10^5
  • 1q1051 \le q \le 10^5
  • 0ai10120 \le a_i \le 10^{12}
  • 1lrn1 \le l \le r \le n

样例


样例

输入

5 2
0 1000 2000 3000 4000
1 3
2 5

输出

1031 1000 1005 1044 1054

26/1/10 dc7-02 测验

未参加
状态
已结束
规则
IOI
题目
4
开始于
2026-1-10 13:00
结束于
2026-1-10 16:00
持续时间
3 小时
主持人
参赛人数
15