#964. 模2019的最小值

模2019的最小值

题目描述

给定两个非负整数 LLRR。你需要从闭区间 [L,R][L, R] 中选择两个整数 iijj,使得 Li<jRL \le i < j \le R

请计算 (i×j)(mod2019)(i \times j) \pmod{2019} 的最小可能值。

输入格式

第一行包含一个正整数 TT —— 测试用例的数量。

接下来 TT 行,每行包含两个非负整数 LLRR,中间用一个空格隔开。

输出格式

对于每个测试用例,输出一行一个整数,表示 (i×j)(mod2019)(i \times j) \pmod{2019} 的最小可能值。

样例输入 1

2
2020 2040
4 5

样例输出 1

2
20

说明

样例解释

  • 在第一个测试用例中,当选择 (i,j)=(2020,2021)(i, j) = (2020, 2021) 时,(2020×2021)(mod2019)=1×2=2(2020 \times 2021) \pmod{2019} = 1 \times 2 = 2,这是可能的最小值。
  • 在第二个测试用例中,只能选择 (i,j)=(4,5)(i, j) = (4, 5),此时 (4×5)(mod2019)=20(mod2019)=20(4 \times 5) \pmod{2019} = 20 \pmod{2019} = 20

数据范围

  • 对于所有测试点,保证 T=10T = 100L<R2×1090 \le L < R \le 2 \times 10^9
  • 对于 70%70\% 的数据,保证 0L<R1030 \le L < R \le 10^3
  • 对于 100%100\% 的数据,保证 0L<R2×1090 \le L < R \le 2 \times 10^9
  • 保证所有的输入值均为整数。