#ACSPJ20243. ACSPJ20243 操作

ACSPJ20243 操作

题目描述

小可可有一个长度为 n 的初始都为 0 的数组和从左到右的 m 个机器,每个机器 i 都有两种类别之一。若机器 i 是第一种机器,那么它需要执行的操作是将 axi 的值加上 yi;如果机器 i 是第二种机器,那么它需要执行的操作是依次执行第 li 到第 ri 个机器的操作,其中有 ri < i。

需要注意的是,每个第二种机器只会执行它左边机器的操作。

现在小可可依次执行了机器 c1, c2, . . . , ck 的操作,想知道最后得到的数组是什么。 由于数组中的元素可能很大,你只需要帮她求出每个元素除以 10007 的余数即可。


输入格式

第一行三个正整数 n,m 和 k。

接下来一行 k 个正整数,表示序列 c。

接下来 m 行,每行三个正整数,第一个正整数 oi ∈ {1, 2},表示机器 i 的类型。如 果 o = 1,则接下来两个正整数 xi , yi,1 ≤ xi ≤ n,1 ≤ yi ≤ 104。如果 o = 2,则接下 来两个正整数 li , ri,1 ≤ li ≤ ri < i。


输出格式

一行 n 个正整数,表示数组中每个元素除以 10007 的余数。


2 3 3
1 2 3
1 1 2
2 1 1
2 1 2
8 0

样例解释

先执行第一个机器的操作,给 a1 加上了 2。

然后执行第二个机器的操作,它操作了第一个机器,给 a1 加上了 2。

然后执行第三个机器的操作,它先操作了第一个机器,给 a1 加上了 2,然后操作了 第二个机器。第二个机器又操作了第一个机器,给 a1 加上了 2。

所以最后 a1 = 8, a2 = 0。

数据范围

对于 10% 的数据,1 ≤ n, m, k ≤ 10。

对于 30% 的数据,1 ≤ n, m, k ≤ 1000。

对于另 20% 的数据,n = 1。

对于另 20% 的数据,k = 1。

对于 100% 的数据,1 ≤ n, m, k ≤ 2 × 10^5。

c_1.in

c_1.out

c_2.in

c_2.out