D. 模刀削面

    传统题 文件IO:modulo 1000ms 512MiB

模刀削面

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目背景

小依:你知道刀削面吗?

小铃:你不知道吗?!就是一只手拿着面团,另一只手里拿刀,站在开水锅前,把面团削成细长的薄片下进锅里煮的那种面!

小圈:你说得对,但是取模也是一种刀削面(?)

题目描述

给定长为 nn 的数列 aa。对于一个非负整数 xx,定义刀削面函数 $f(x) = x \bmod a _ 1 \bmod a _ 2 \bmod \cdots \bmod a _ n$(即先对 a1a _ 1 取模,再对 a2a _ 2 取模,一直取模到 ana _ n)。

给出非负整数 l,rl, r,求 i=lrf(i)\sum \limits _ {i = l} ^ r f(i) 的值对 109+710 ^ 9 + 7 取模的结果。

输入格式

第一行三个非负整数 n,l,rn, l, r

第二行 nn 个正整数表示 aa 数列。

输出格式

一行一个非负整数表示 i=lrf(i)\sum \limits _ {i = l} ^ r f(i) 的值对 109+710 ^ 9 + 7 取模的结果。

样例

样例输入 1

4 0 9
9 9 8 5 

样例输出 1

13

样例输入/输出 2

见下发文件 modulo2.in/ans。该样例满足测试点 353 \sim 5 的限制。

样例输入/输出 3

见下发文件 modulo3.in/ans。该样例满足测试点 8118 \sim 11 的限制。

数据范围与提示

本题共 2020 个测试点,每个测试点 55 分。

测试点编号 特殊性质
121 \sim 2 r<minair < \min a _ i
353 \sim 5 n1000n \le 1000r10000r \le 10000
676 \sim 7 n1000n \le 1000rl10000r - l \le 10000
8118 \sim 11 n1000n\le 1000
121412 \sim 14 n10000n\le 10000
151615 \sim 16 n70000n\le 70000
172017 \sim 20 无特殊限制

对于所有数据,1n2×1051 \le n \le 2\times 10 ^ 50lr10180 \le l \le r \le 10 ^ {18}1ai10181 \le a _ i \le 10 ^ {18}

后记

小依 & 小铃:所以取模和刀削面到底有什么关系啊!

小圈:你们不知道吗?!就是一只手拿着原数,另一只手里拿模数,站在开水锅(?)前,把原数削成细长的模数下进锅里煮(?)的那种运算!

1128

未参加
状态
已结束
规则
OI
题目
4
开始于
2024-11-28 11:45
结束于
2024-11-29 19:45
持续时间
4.5 小时
主持人
参赛人数
32