405945: GYM102174 H 目标是成为数论大师

Memory Limit:256 MB Time Limit:1 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

H. 目标是成为数论大师time limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard output

小白非常不擅长数论,在强老师的数论课上,小白听着听着又睡着了(毕竟梦里什么都有)。小白梦见自己成为了数论大师,只用了三分钟就熟练地写出了一道拉格朗日反演套多项式逆元和快速数论变换的好题。但是当他醒来一看,他还是对数论的题目一窍不通。现在就有一道简单题摆在小白的面前,聪明的你能帮帮他吗?

定义经过函数的一次映射就能回到自身的点为函数的不动点(Fix Point)。换句话说,给定函数 $$$f(x)$$$,它的不动点就是所有使得 $$$f(x)=x$$$ 成立的 $$$x$$$ 的集合。如函数 $$$f(x)=x$$$ 有无穷多个不动点,而函数 $$$f(x)=2x-1$$$ 则只有 $$$x=1$$$ 这一个不动点。请你找出函数 $$$f(x)=\sqrt{ax}+b$$$ 的所有不动点。

Input

第一行输入一个正整数 $$$T\ (1\le T\le 100)$$$,表示数据组数。

接下来 $$$T$$$ 组数据,每组数据输入两个整数 $$$a$$$ 和 $$$b\ (-10^3\le a,b\le 10^3)$$$,描述本组输入的函数 $$$f(x)=\sqrt{ax}+b$$$,保证该函数至少存在一个不动点,且所有的不动点均为整数。

Output

对于每组数据,第一行请输出一个正整数 $$$k$$$,表示函数 $$$f(x)=\sqrt{ax}+b$$$ 的不动点个数。第二行请从小到大依次输出 $$$k$$$ 个整数 $$$x_1,x_2,\cdots ,x_k\ (x_1<x_2<\cdots <x_k)$$$ 由空格间隔开,描述函数 $$$f(x)$$$ 的不动点集合,注意换行。

ExampleInput
2
1 0
0 1
Output
2
0 1
1
1

加入题单

算法标签: