Problem10651--洛谷P3281 - [SCOI2013] 数数

10651: 洛谷P3281 - [SCOI2013] 数数

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 512 MiB

Description

Fish 是一条生活在海里的鱼,有一天他很无聊,就开始数数玩。他数数玩的具体规则是:

1. 确定数数的进制B

2. 确定一个数数的区间[L, R]

3. 对于[L, R] 间的每一个数,把该数视为一个字符串,列出该字符串的每一个(连续的)子串对应的B进制数的值。

4. 对所有列出的数求和。现在Fish 数了一遍数,但是不确定自己的结果是否正确了。由于[L, R] 较大,他没有多余精力去验证是否正确,你能写一个程序来帮他验证吗?

Input

输入包含三行。

第一行仅有一个数B,表示数数的进制。

第二行有N +1 个数,第一个数为N,表示数L 在B 进制下的长度为N,接下里的N个数从高位到低位的表示数L 的具体每一位。

第三行有M+ 1 个数,第一个数为M,表示数R 在B 进制下的长度为M,接下里的M个数从高位到低位的表示数R 的具体每一位。

Output

输出仅一行,即按照Fish 数数规则的结果,结果用10 进制表示,由于该数可能很大,输出该数模上20130427的模数。

数据中有 $r<l$ 的情况,输出的是 $-ans[r+1,l-1]\bmod 20130427$

Constraints

20% 数据,$0 \leq L \leq R \leq 10^5$。
50% 数据,$2 \leq B \leq 1000,\ 1 \leq N,M \leq 1000$。
100% 数据,$2 \leq B \leq 10^5,\ 1 \leq N,M \leq10^5$。

Sample 1 Input

10
3 1 0 3
3 1 0 3

Sample 1 Output

120
[103, 103] 之间仅有数103,该数的所有子串包括1, 10, 103, 0, 03, 3,其和为120。

HINT

洛谷P3281

Source/Category

数位DP