AT_s8pc_1_e.散歩 (E869120 and Path Length)
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
在 E869120 王国中,有 N 个城镇。城镇 i−1 和城镇 i 之间有道路相连。
每个城镇 i 上标注了一个整数 ai,连接城镇 i−1 和城镇 i 的道路长度用公式 ai−1×ai 计算。
E869120 王国的居民 square1001 想去散步。square1001 住在城镇 1,他的计划是按照路径 1→c1→c2→…→cQ→1 行走。
为了避免 square1001 走太远,我们需要帮助他计算总行走的距离,并对结果取模 1,000,000,007。
输入格式
输入数据包括:
- 第一行包含两个整数 N 和 Q,分别表示城镇的总数和旅途经过的城镇数。
- 第二行包含 N 个整数 a1,a2,…,aN,表示每个城镇上标注的数字。
- 第三行包含 Q 个整数 c1,c2,…,cQ,表示 square1001 的散步路径。
输出格式
输出行走的总距离对 1,000,000,007 取模后的结果。在输出末尾添加换行符。
输入输出样例
输入#1
4 3 5 3 1 2 3 2 4
输出#1
264
输入#2
3 2 23 12 9 2 3
输出#2
876796540
输入#3
2 1 1000000000 1000000000 2
输出#3
625113690
说明/提示
约束条件
- 2≤N≤120,000
- 1≤Q≤120,000
- 0≤ai≤1,000,000,000
- 1≤ci≤N
- ci−1=ci
- 若 ai=0,则 ai+1=0
部分得分
- 对于 1≤N≤1,000 且 1≤Q≤1,000 且 1≤ai≤1,000 的测试用例,获得 15 分。
- 对于 1≤N≤1,000 且 1≤Q≤1,000 的测试用例,获得 50 分。
- 对于所有测试用例,若答对全部给 100 分。
示例解释 1
- 第一次,square1001 从城镇 1 行至城镇 3,走的距离是 5×3+3×1=128。
- 第二次,从城镇 3 行至城镇 2,走的距离是 3×1=3。
- 第三次,从城镇 2 行至城镇 4,走的距离是 3×1+1×2=4。
- 第四次,从城镇 4 回到城镇 1,走的距离是 1×2+3×1+5×3=129。
- 因此,square1001 总共走了 264。
示例解释 2
square1001 在一趟行程中走了 43,829,259,183,601,346,因此结果对 1,000,000,007 取模为 876,796,540。
本翻译由 AI 自动生成
输入解题思路,AI测评打分。不知道怎么写?