问题 6117 --加与乘(一)

6117: 加与乘(一)

题目描述

有 $n$ 个整数 $a_1,a_2,\dots,a_n$,一开始,所有数字都是 $0$,接下来将根据输入数据依次进行 $q$ 条修改操作: + 加法修改操作以字符 `+` 开头,后接两个整数 $p$ 与 $d$,表示数列的第 $p$ 项将增加 $d$; + 乘法修改操作以字符 `*` 开头,后接一个整数 $m$,表示数列的每一项都将乘以 $m$。 请输出经过修改后数列,由于答案可能很大,输出每一个数字模 $1,000,000,007$ 的余数。

输入

第一行:两个整数表示 $n$ 与 $q$。 第二行到第 $q+1$ 行:第 $i+1$ 行首先有一个字符表示操作类型,若是加法修改,后接两个整数 $p_i$ 与 $d_i$,若是乘法修改,后接一个整数 $m_i$

输出

单独一行:$n$ 个数字表示修改后每个数字模 $1,000,000,007$ 的余数。

样例输入输出

输入#1 复制
3 5
+ 1 3
* 10
+ 2 6
+ 3 9
* 5
输出#1 复制
150 30 45

提示

+ 对于 $40\%$ 的数据,$n,q\leq 1000$ + 对于 $80\%$ 的数据,$n,q\leq 50000$ + 对于 $100\%$ 的数据,$n,q\leq 200,000$ + $1\leq d_i,m_i\leq 1,000,000$
序号 标题 作者 发表时间 费用 订购数 操作