P3429.第1题-Zeeman的LCM序列2
题目内容
Zeeman希望你构造一个长度为n的正整数数组{a1,a2,...,an},满足:
- 对于任意两个不同的下标i,j(1≦i,j≦n;i=j),均有lcm(ai,aj)=lcm(i,j)×x;
- 对于任意一个下标i(1≦i≦n),均有ai=i×x。
如果存在多个答案,输出任意一个即可。
名词解释
最小公倍数(lcm):是指两个或多个整数公有的倍数中最小的一个。例如,8和12的最小公倍数是24,记作 lcm(8,12)=24
输入描述
输入一行两个整数n,x(2≦n≦106,1≦x≦1018)
输出描述
如果可以构造出符合条件的数组,第一行输出字符串 Yes,第二行输出n个整数,代表数组a;否则,直接输出字符串No。如果存在多个解决方案,您可以输出任意一个,系统会自动判定是否正确。注意,自测运行功能可能因此返回错误结果,请自行检查答案正确性。
样例1
输入
2 2
输出
Yes
4 2
说明
在这个样例中
(1cm(a1,a2)=lcm(4,2)=4)=(1cm(1,2)×2=2×2=4)
(a1=4)=(1×2=2)、(a2=2)=(2×2=4)。
样例2
输入
3 7
输出
No