CF121E Lucky Array

题目描述

Petya 喜欢幸运数,幸运数只包含 $4$ 和 $7$ 这两个数字。例如 $47$,$744$,$4$ 都是幸运数字,但 $5,16,467$ 不是。 Petya 有一个 $N$ 个数的数组,他想给这个数组执行 $M$ 个操作,可以分为两种操作: 1. `add l r d` 把第 $l$ 到第 $r$ 个数都加上 $d$; 2. `count l r` 统计第 $l$ 到第 $r$ 个数有多少个幸运数字。 保证所有数操作前后都不超过 $10^4$。 请你编一个程序来执行这些操作。 $1\leq N,M\leq 10^5$,$1\leq l\leq r\leq N$,$1\leq d \leq 10^4$。

输入格式

第一行,两个数 $N$ 和 $M$; 第二行,$N$ 个数,表示原数组;

输出格式

对于每个询问幸运数个数的问题,输出答案,每个占一行。

说明/提示

对于第一个样例: 1. 执行了 `add 1 3 2` 操作之后变成:$[4, 5, 6]$; 2. 执行了 `add 2 3 3` 操作之后变成:$[4, 8, 9]$。 对于第二个样例: 1. 执行了 `add 1 4 3` 之后变成:$[7,7,7,7]$; 2. 执行了 `add 2 3 40` 之后变成:$[7,47,47,7]$。