#P1356. 黑板数列(board)
黑板数列(board)
黑板上有一列实数,对于 每一次 操作,可以选择两个实数,把它们分别乘上对方的值。
例如,给定 ,对 和 进行一次操作,原数列变为 。
给定数列的长度 ,你的目标是找到一种操作方案,使得对于任意长度为 的实数列,按照该操作方式操作之后,数列的每一项数值都相同。
输入格式
本题有多组测试数据。
第一行输入数据组数 。
对于每组数据有一行,包含一个正整数 ,表示数列长度。
输出格式
对于每组数据,先输出一个整数表示能否找到。若能输出 ,否则输出 。
若能找到,还需要输出一行 表示操作次数(你需要保证 ),接下来 行,每行包含两个整数,表示操作的两项在数列中的编号。
3
2
3
4
1
1
1 2
0
1
4
1 2
3 4
1 3
2 4
数据范围与评分方式
本题仅提供一个满足 的测试点。
对于第 和 组数据,保证 。即保证 。
对于每组数据分别评分,每组数据满分 分。
若存在合法方案,则判断正确得 分,构造也正确得 分;若不存在,判断正确得 分,否则不得分。
提示:若能够完成正确性判断,但是无法构造的,请输出一个 的构造。类似地,输出时请判定 是否成立,若评分时 ,则你无法得到任何分数。