#P3208. 「NOIP2015普及组」求和
「NOIP2015普及组」求和
Description
一条狭长的纸带被均匀划分出了 个格子,格子编号从 到 。每个格子上都染了一种颜色。(用当中的一个整数表示) ,并且写了一个数字 。
定义一种特殊的三元组:,其中 ,, 都代表纸带上格子的编号,这里的三元组要求满足以下两个条件:
1., , 都是整数, , ;
2.
满足上述条件的三元组的分数规定为 。整个纸带的分数规定为所有满足条件的三元组的分数的和。 这个分数可能会很大, 你只要输出整个纸带的分数除以 所得的余数即可。
Input Format
输入文件名为 sum.in
。
第一行是用一个空格隔开的两个正整数和,代表纸带上格子的个数,代表纸带上颜色的种类数。
第二行有个用空格隔开的正整数, 第个数字;代表纸带上编号为的格子上面写的数字。
第三行有个用空格隔开的正整数, 第i个数字;代表纸带上编号为的格子染的颜色。
Output Format
输出文件名为 sum.out
。
共一行,一个整数,表示所求的纸带分数除以 所得的余数。
Sample
样例输入1
6 2
5 5 3 2 2 2
2 2 1 1 2 1
样例输出1
82
Hint
【输入输出样例 1 说明】
纸带如题目描述中的图所示。
所有满足条件的三元组为: , 。
所以纸带的分数为$(1 + 5) \times (5 + 2) + (4 + 6) \times (2 + 2) = 42 + 40 = 82$。