CF1708B.Difference of GCDs

传统题 时间 2000 ms 内存 256 MiB 5 尝试 1 已通过 1 标签

Difference of GCDs

题目描述

给定三个整数 nnllrr。你需要构造一个数组 a1,a2,,ana_1,a_2,\dots,a_n,满足 lairl\le a_i\le r,并且 gcd(i,ai)\gcd(i,a_i) 两两互不相同。如果无法构造出这样的数组,则输出无解。

这里 gcd(x,y)\gcd(x, y) 表示整数 xxyy 的最大公约数。

输入格式

输入包含多组测试数据。第一行包含一个整数 tt1t1041\le t\le 10^4),表示测试数据的组数。接下来每组测试数据包含一行,包含三个整数 nnllrr1n1051 \le n \le 10^51lr1091\le l\le r\le 10^9)。

保证所有测试数据中 nn 的总和不超过 10510^5

输出格式

对于每组测试数据,如果无解,输出 "NO"(不带引号,大小写均可)。否则,输出 "YES"(不带引号),并在下一行输出 nn 个整数 a1,a2,,ana_1,a_2,\ldots,a_n,表示你构造的数组。

如果有多组解,你可以输出任意一组。

说明/提示

在第一个测试用例中,gcd(1,a1),gcd(2,a2),,gcd(5,a5)\gcd(1,a_1),\gcd(2,a_2),\ldots,\gcd(5,a_5) 分别为 1122334455

由 ChatGPT 4.1 翻译

样例

4
5 1 5
9 1000 2000
10 30 35
1 1000000000 1000000000
YES
1 2 3 4 5
YES
1145 1926 1440 1220 1230 1350 1001 1000 1233
NO
YES
1000000000

在线编程 IDE

建议全屏模式获得最佳体验