构造?
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

构造一个整数数组   ,数组下标从 1 开始,每个位置只能由0-9的整数组成, 数字d在数组中出现的次数为cnt_d

给定三个整数l, r , d,求出所有数组长度在[l, r]中数字 d 的贡献  的和,答案对  取模。

所构造的数组合法:仅当  且 数组长度在 范围内。

两种方案认为不同:仅当两数组组成的序列不同

形式上求出:
                                    

输入描述:

第一行为一个整数 T ,有 T 组测试数据。

每组测试数据有三个正整数  和  

输出描述:

对于每组输入,输出一个整数,表示答案,答案对  取模。
示例1

输入

复制
2
1 2 7
1 29 3

输出

复制
122
443954720

说明

样例解释
当 l = 1, r =2,d=7
a[1] = 7
a[1] = 1, a[2] = 7
a[1] = 2, a[2] = 7
a[1] = 3, a[2] = 7
.....
则 Ans=7*1+1+2+3+4+5+6+7*(10+1)+8+9=122