. 数位和问题
题目ID:9798必做题100分
时间限制: 1000ms
空间限制: 524288kB
题目描述
数位之和的意思是某个整数每一位之和。比如 123123 的数位之和就是 66。
小信现在给你一个长度为 nn 的数组 aa ,然后操作 qq 次,有两种操作:
- 1~l~r1 l r 代表将下标范围在 [l,r][l,r] 内所有的 a_iai , 修改为 a_iai 的数位之和
- 2~x2 x 代表输出 a_xax 。
输入格式:
第一行两个整数 nn, qq,
第二行包括 nn 个整数,a_1,a_2,…,a_na1,a2,…,an。
接下来 qq 行,每行代表一次操作。
输出格式:
对于每次操作 22,输出一行一个整数表示答案。
样例1输入:
5 8 1 420 69 1434 2023 1 2 3 2 2 2 3 2 4 1 2 5 2 1 2 3 2 5
样例1输出:
6 15 1434 1 6 7
约定与提示:
1 \leq n,q \leq 2 * 10^51≤n,q≤2∗105,
1 \leq a_i \leq 10^91≤ai≤109。
对于样例1测试数据操作过程如下:
- 刚开始,a = [1,420,69,1434,2023]a=[1,420,69,1434,2023]
- 对 l = 2,r = 3l=2,r=3 执行操作后,a = [1,6,15,1434,2023]a=[1,6,15,1434,2023]。
- 询问x = 2,x = 3,x = 4x=2,x=3,x=4操作后,输出了6,15,14346,15,1434
- 对 l = 2,r = 5l=2,r=5 执行操作后,a = [1,6,6,12,7]a=[1,6,6,12,7]。
- 询问x = 1,x = 3,x = 5x=1,x=3,x=5操作后,输出1,6,71,6,7。