F.A.Q
Hand In Hand
Online Acmers
Problem Archive
Realtime Judge Status
Authors Ranklist
 
     C/C++/Java Exams     
ACM Steps
Go to Job
Contest LiveCast
ICPC@China
Best Coder beta
VIP | STD Contests
    DIY | Web-DIY beta
Author ID 
Password 
 Register new ID

度度熊与数字

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 1027    Accepted Submission(s): 402


Problem Description
度熊发现,$1$, $3$ 以及 $9$ 这三个数字很神奇,它们的所有的倍数的每位数字的和一定是自己的倍数。例如说: $54$ 是 $3$ 的倍数,同时 $5+4 = 9$ 也是 $3$ 的倍数。在另一个例子 $666$ 是 $9$ 的倍数,同时 $6+6+6 = 18$ 也是 $9$ 的倍数。

度熊又发现,除了 $1$, $3$, $9$ 以外的的正整数,虽然并不满足"所有的倍数的每位数字的和一定是自己的倍数",但也存在一些数是它们的倍数且各位数字和也是它们的倍数。例如说,$888$ 是 $12$ 的倍数,且他的各位数字和 $8+8+8=24$ 也是 $12$ 的倍数。

现在度熊想知道,给你一个正整数 $V$,是否存在一个数 $x$,使得 $V$ 是 $x$ 的倍数,同时它的每位数字的和也是 $x$ 的倍数呢?请找出所有这样的数 $x$。
 

Input
有多组询问,第一行包含一个正整数 $T$ 代表有几组询问,接着每组测试数据占一行,包含一个正整数 $V$。

* $1 \le T \le 100$

* $1 \le V \le 10^9$
 

Output
对于每一个询问,输出两行,第一行包含一个正整数 $m$,$m$ 代表对于该询问的 $V$,有几个满足条件的 $x$。第二行输出 $m$ 个数,把所有满足条件的 $x$ 由小到大输出。
 

Sample Input
3 1 9 666666
 

Sample Output
1 1 3 1 3 9 6 1 2 3 6 9 18 Note 第一个询问中,$1$ 的各位数和为 $1 = 1 \times 1$,本身等于 $1 \times 1$ 都是 $1$ 的倍数,故 $1$ 确实为 $V=1$ 的答案。 第三个询问中,$666666$ 的各位数和为 $36 = 9 \times 4$,本身等于 $9 \times 7474$ 都是 $9$ 的倍数,故 $9$ 确实为 $V=666666$ 的答案,经过仔细计算后能发现,除 $9$ 以外, $1,2,3,6,18$ 也都是答案。
 

Source
 

Statistic | Submit | Discuss | Note
Hangzhou Dianzi University Online Judge 3.0
Copyright © 2005-2024 HDU ACM Team. All Rights Reserved.
Designer & Developer : Wang Rongtao LinLe GaoJie GanLu
Total 0.000000(s) query 1, Server time : 2024-05-13 18:11:57, Gzip enabled