#P1102. 结盟

结盟

问题描述

有时候,达成同盟并非是一种易事,双方往往会全面考察对方的实力,从而确定对方是否真的有与自己达成同盟的实力。

小七想与老六结为同盟,向老六发出了结盟邀请。老六为了考察小七的实力,出了一道难题来考验他。

老六手里有一个很大的整数,要求小七必须从这个大整数中间删去一连串的数字,然后将剩下的整数拼接起来形成一个新的整数(新的整数允许有前导 00),例如,老六给出一个整数 12131211213121,小七可以删除里面的一串整数 13121312,剩下的整数拼接起来就是 121121

老六的考验自然不是仅仅让小七删去一串连续的数字那么简单的,老六是想让小七计算所有可能出现的拼接后的整数之和。

输入描述

第一行是一个正整数 nn,表示老六给出的数字的大小。

输出描述

输出仅一行,表示所有可能出现的拼接后的整数的和。这个答案可能会很大,所以老六允许小七输出最终答案对 1e9+71e9 + 7 取模后的值

107
42
100500100500
428101984

样例解释

对于样例 11,小七可以删除1,0,7,10,071071,0,7,10,07或107,得到的拼接后的整数分别会是07,17,10,7,1,007,17,10,7,1,0,这些整数之和为 4242

数据范围与约定

对于所有的数据,均满足 1n101051 \leq n \leq 10^{10^5}

测试点编号 数据范围 特殊约束
11 1n1001 \leq n \leq 100
232-3 1n101031 \leq n \leq 10^{10^3}
454-5 1n101051 \leq n \leq 10^{10^5} 保证老六给出的整数只包含一种数字
6106-10

大样例

大样例下载