Preparing NOJ

Kaprekar数

10000ms 65536K

Description:

         一个Kaprekar数(雷劈数,或卡普利加数)是个非负整数,将它的平方分成两部分,这两部分之和正好是原来的数字。例如,297是一个Kaprekar 数:297² = 88209, 88 + 209 = 297. 在这里,平方分成的第二部分可以从0开始,但不能是负数。例如, 999是一个Kaprekar 数:999² = 998001, 998 + 001 = 999;但100不是:100² = 10000100 + 00 = 100, 其中第二部分为0.

在数学上,假设X是一个非负整数。在十进制计数中,X是一个Kaprekar 数,当且仅当存在非负整数n, A, 和整数B满足下列三个条件::

0 < B <10n

X² = A10n + B

X = A + B

在十进制计数中,常见的Kaprekar数有:

1, 9, 45, 55, 99, 297, 703

Input:

输入包含多个测试例(不超过100)。每个测试用例包括一行。给出一个整数 (位数不超过1000)。一行“0”表示所有输入结束,无需处理此例。

Output:

对于每个测试用例,输出一行,依次包含:

l         Case #: ”,#表示序号

l         如果测试用例中的数为Kaprekar数,则输出Yes,否则输出No

Sample Input:

999 
101
4879
0

Sample Output:

Case 1: Yes
Case 2: No
Case 3: Yes

Note:

 

本题由旧版NOJ导入,来源:NUPT

Info

NOJ

Provider NOJ

Code NOJ1598

Tags

Submitted 2

Passed 1

AC Rate 50%

Date 04/20/2019 10:03:10

Related

Nothing Yet