#1621. 除法运算(divide)

    传统题 1000ms 256MiB

除法运算(divide)

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目背景

此题是中山市第十二届义务教育段学生信息学邀请赛初中组 T1。

题目描述

Jimmy\text{Jimmy} 开始学习除法啦!一开始他学习了余数为 00 的除法(也就是我们常说的整除),后来又学习了余数不为 00 的除法,所以 Jimmy\text{Jimmy} 对被除数、除数、商、余数这些概念都已经了如指掌了。

有一天,他忽然思考起一个问题——给一个正整数 nn 作为被除数,除数 kk 可以取任意正整数,那么会有多少互不相同的商呢?

例如:被除数 n=5n=5,无论除数 kk 如何变化,商最多也只有 44 个不同的值,分别为 0,1,2,50,1,2,5。这是因为:

  • 5÷6=055\div6=0\dots5
  • 5÷5=105\div5=1\dots0
  • 5÷4=115\div4=1\dots1
  • 5÷3=125\div3=1\dots2
  • 5÷2=215\div2=2\dots1
  • 5÷1=505\div1=5\dots0

Jimmy\text{Jimmy} 作为一个天才,对这么简单的问题自然是手到擒来,于是他拿着这个问题向你发起了挑战。你能回答这个问题吗?

输入格式

本题输入有多组测试数据。

第一行一个整数 TT,表示测试数据的组数。

接下来 TT 行,每行一个整数 nn,表示被除数。

输出格式

输出共 2×T2\times T 行,对于每组测试数据输出 22 行:

第一行输出一个整数 mm,表示商有 mm 个不同的值;

第二行输出 mm 个整数,分别表示 mm 个不同的商,按从小到大的顺序输出。

输入输出样例 #1

输入 #1

2
5
11

输出 #1

4
0 1 2 5
6
0 1 2 3 5 11

说明/提示

【测试点约束】

对于 45%45\% 的数据,保证 1n10001\le n\le1000

对于 50%50\% 的数据,保证 1n1051\le n\le10^5

对于 100%100\% 的数据,保证 1T101\le T\le101n1091\le n\le10^9

2024年信息学邀请赛初中组

未参加
状态
已结束
规则
IOI
题目
6
开始于
2025-6-10 19:30
结束于
2025-6-19 3:30
持续时间
200 小时
主持人
参赛人数
17