A49457.圆环游戏
普及+/提高
通过率:0%
时间限制:1.00s
内存限制:128MB
题目描述
cjdst 做了一个圆环游戏。在这个游戏中,你要在一张有 N 个格子的环形地图内移动,编号依次别为 1∼N,每个格子上有一个正整数 Ai。
你最开始所在的编号为 1,得分为 0。你将进行若干次操作,每次操作如下:
- 投掷一个多面体骰子,记你当前所在的编号数为 K,得到的点数为 X。
- 前进 X 格,即前进至编号为 ((K+X−1)modN)+1 的格子。
- 记你当前所在的格子的编号数为 L。
- 将得分增加 AL。
但是,cjdst 偷偷给这个多面体骰子动了手脚,当你在编号为 K 的格子内时,无论怎么投掷,得到的点数均为 BK。
现求当你在进行第 M 次操作后的得分为多少,答案对 109+7 取模。
输入格式
第一行两个正整数 N,M。
第二行 N 个正整数 Ai。第三行 N 个正整数 Bi。
输出格式
一个正整数,表示进行 M 次操作后的得分。
输入输出样例
输入#1
5 3 2 3 2 1 5 2 3 4 3 1
输出#1
10
说明/提示
样例解释
你需要执行 3 步。
第 1 步:前进 2 格至编号为 3 的格子,并将得分加 2。
第 2 步:前进 4 格至编号为 2 的格子,并将得分加 3。
第 3 步:前进 3 格至编号为 5 的格子,并将得分加 5。
因此,总得分为 10。
以下是测试点信息:
测试点 | N | M | Ai,Bi | 性质 |
---|---|---|---|---|
1 | ≤10 | ≤10 | ≤10 | 数据为样例#1 |
2 | ≤103 | ≤5×105 | ≤105 | A |
3,4,5 | ≤103 | ≤5×105 | ≤105 | 无 |
6 | ≤2×105 | <264 | ≤106 | A |
7 | ≤2×105 | <264 | ≤106 | B |
8,9,10 | ≤2×105 | <264 | ≤106 | 无 |
11 | ≤106 | ≤102×105 | ≤109 | A |
12 | ≤106 | ≤102×105 | ≤109 | B |
13,14,15 | ≤106 | ≤102×105 | ≤109 | 无 |
性质 A:保证 N∣B1。
性质 B:保证所有 Bi 都相等。