已结束 ACOI #1

A4998 | 圆环游戏

时间限制1s
内存限制128MB
通过 / 提交0/0

题目描述

cjdst 做了一个圆环游戏。在这个游戏中,你要在一张有 $N$ 个格子的环形地图内移动,编号依次别为 $1\sim N$,每个格子上有一个正整数 $A_i$。

你最开始所在的编号为 $1$,得分为 $0$。你将进行若干次操作,每次操作如下:

1. 投掷一个多面体骰子,记你当前所在的编号数为 $K$,得到的点数为 $X$。
2. 前进 $X$ 格,即前进至编号为 $((K + X - 1) \mod N) + 1$ 的格子。
3. 记你当前所在的格子的编号数为 $L$。
4. 将得分增加 $A_L$。

但是,cjdst 偷偷给这个多面体骰子动了手脚,当你在编号为 $K$ 的格子内时,无论怎么投掷,得到的点数均为 $B_K$。

现求当你在进行第 $M$ 次操作后的得分为多少,答案对 $10^9+7$ 取模。

输入格式

第一行两个正整数 $N, M$。
第二行 $N$ 个正整数 $A_i$。第三行 $N$ 个正整数 $B_i$。

输出格式

一个正整数,表示进行 $M$ 次操作后的得分。

输入输出样例

输入 #1
5 3
2 3 2 1 5
2 3 4 3 1
输出 #1
10
C++ 编辑器
输入
输出