#P9652. 『GROI-R2』 紫水晶

    ID: 8881 远端评测题 1000ms 512MiB 尝试: 0 已通过: 0 难度: 2 上传者: 标签>数学洛谷原创Special JudgeO2优化构造洛谷月赛

『GROI-R2』 紫水晶

题目描述

爱丽丝不曾忘记过她曾经存在于纸牌的世界。

于是魔法让她的手里出现了一些牌,同时魔法也让坦尼尔手里出现了一些牌,而且每张牌上都写着一个正整数——尽管他们如今所处的,是玻璃王国的世界中。

牌张很快一消而散,而他们也准备启程。爱丽丝只记住了每相邻两张牌的最大公约数之和,坦尼尔只记住了每相邻两张牌的最小公倍数之和

你还在这个宫殿里,你想重现当时的牌张。

形式化题面

给定 qq 次询问,每次询问为以下两种之一:

  • 1 n x 表示要求输出一长度为 nn正整数序列 {an}\{a_n\},使得 i=1n1gcd(ai,ai+1)=x\sum\limits_{i=1}^{n-1} \gcd(a_i,a_{i+1})=x

  • 2 n x 表示要求输出一长度为 nn正整数序列 {an}\{a_n\},使得 $\sum\limits_{i=1}^{n-1} \operatorname{lcm}(a_i,a_{i+1})=x$。

且对于任意输出的 aia_i 不应超出 C++ 语言中 int 的存储范围。

其中 gcd\gcdlcm\operatorname{lcm} 分别为最大公约数和最小公倍数,如有多解,输出任意一个即可。如果无解,输出 -1

输入格式

第一行输入一个正整数 qq 表示询问次数。

接下来 qq 行,每行输入三个正整数 op,n,xop,n,x

  • op=1op=1 时表示爱丽丝的牌张数为 nn,她记住的和为 xx,要求还原她的牌张。

  • op=2op=2 时表示坦尼尔的牌张数为 nn,他记住的和为 xx,要求还原他的牌张。

输出格式

一共 qq 行,每行输出一个整数序列对应每次询问你构造的牌张序列,序列中相邻的两个数用一个空格隔开。

如有多解,你可以输出任意一个。如果无解,输出 -1

5
1 5 4
2 3 8
1 5 10
2 6 34
1 3 1
1 1 1 1 1
2 2 3
1 1 1 7 7
1 1 4 5 1 4
-1

提示

数据范围

本题采用捆绑测试

Subtask\text{Subtask} n\sum n\le xx\le 特殊性质 分值
11 55 1010 1010
22 5050 200200 2020
33 5×1055\times 10^5 23112^{31}-1 A\text{A} 1515
44 B\text{B}
55 4040

特殊性质 A\text{A}:保证对于任意询问满足 op=1op=1

特殊性质 B\text{B}:保证对于任意询问满足 op=2op=2

对于 100%100\% 的数据满足 2n5×1052\le n\le 5\times 10^52n5×1052\le \sum n\le 5\times 10^51x23111\le x \le 2^{31}-1op{1,2}op\in\{1,2\}