6159: 除法(divide)
[Creator : ]
Description
小可可进入了小学三年级,开始学习除法,一开始学习余数为 $0$ 的除法,后来又学习了余数不为 $0$ 的除法。
小可可数学很好,对被除数、除数、商、余数都弄得很清楚。
有一天,他在思考这样的一个问题:给一个正整数 $n$ 作为被除数,除数 $k$ 可以取任意正整数,那么商有多少个不同的值呢?
例如:被除数 $n=5$,无论除数 $k$ 取任何正整数,商只有 $4$ 个不同的值,分别为 $0, 1,2, 5$,因为 $5÷6 = 0…5,\ 5÷5=1…0,\ 5÷4=1…1,\ 5÷3=1…2,\ 5÷2=2…1,\ 5÷1=5…0$。
小可可最近有点忙,他把这个问题交给了你。
小可可数学很好,对被除数、除数、商、余数都弄得很清楚。
有一天,他在思考这样的一个问题:给一个正整数 $n$ 作为被除数,除数 $k$ 可以取任意正整数,那么商有多少个不同的值呢?
例如:被除数 $n=5$,无论除数 $k$ 取任何正整数,商只有 $4$ 个不同的值,分别为 $0, 1,2, 5$,因为 $5÷6 = 0…5,\ 5÷5=1…0,\ 5÷4=1…1,\ 5÷3=1…2,\ 5÷2=2…1,\ 5÷1=5…0$。
小可可最近有点忙,他把这个问题交给了你。
Input
本题有多组测试数据。
第一行输入一个整数 $T$,表示测试数据的组数。
接下来 $T$ 行,每行一个整数 $n$,表示被除数。
第一行输入一个整数 $T$,表示测试数据的组数。
接下来 $T$ 行,每行一个整数 $n$,表示被除数。
Output
输出 $2*T$ 行,对于每组测试数据输出 $2$ 行:
第 $1$ 行输出一个整数 $m$,表示商有 $m$ 个不同的值;
第 $2$ 行输出 $m$ 个整数,分别表示这 $m$ 个不同的值,按从小到大的顺序输出,两个数之间保留一个空格。
第 $1$ 行输出一个整数 $m$,表示商有 $m$ 个不同的值;
第 $2$ 行输出 $m$ 个整数,分别表示这 $m$ 个不同的值,按从小到大的顺序输出,两个数之间保留一个空格。
Constraints
对于 $50\%$ 的数据满足:$1≤ n ≤10^5$。
对于 $100\%$ 的数据满足:$1≤ T ≤10,1≤ n ≤10^9$。
对于 $100\%$ 的数据满足:$1≤ T ≤10,1≤ n ≤10^9$。
Sample 1 Input
2
5
11
Sample 1 Output
4
0 1 2 5
6
0 1 2 3 5 11