题目描述
快乐数
题目描述
小珅对数字非常敏感,机缘巧合之下,他发现了一种特殊的数字,小珅称其为快乐数。
快乐数定义为:对于一个正整数 y,如果存在一个正整数 x,使得 x 加上 x 的各个数字之和为 y,那么就称 y 是一个快乐数,x 为 y 的快乐因子。
例如:
- y = 205 是一个快乐数,其快乐因子为 188;
- y = 108 不是一个快乐数,其没有对应的快乐因子;
- y = 2021 是一个快乐数,其快乐因子为 1996。
现在小珅想要询问你 q 次,每次询问给出一个整数 y。你需要回答 y 是否是快乐数:如果是快乐数,就输出对应的快乐因子;如果有多个快乐因子,就输出最小的快乐因子;否则输出 No。
输入描述
第一行包含一个整数 q,表示有 q 次询问。
接下来 q 行,每行包含一个正整数 ,其中第 i 行的整数 表示第 i 次询问给出的整数。
输出描述
输出共 q 行。对于第 i 行,如果 是快乐数,输出其对应最小的快乐因子,否则输出 No。每行一个结果。
样例 1
输入:
3
8
15
7
输出:
4
12
No
样例 2
输入:
5
201
31
1000
281
282
输出:
186
No
977
271
267
样例 3
输入:
6
10
195
211
1000000
235
213666
输出:
5
183
No
No
230
213645
数据范围
- 对于 60% 的数据:1 ≤ q ≤ 100,1 ≤ ≤ 10^6。
- 对于 100% 的数据:1 ≤ q ≤ 2×10^5,1 ≤ ≤ 10^6。