Problem G: 【2010提高】平方后缀
Memory Limit:64 MB
Time Limit:1.000 S
Judge Style:Text Compare
Creator:
Submit:10
Solved:0
Description
读入一个长度为K(1<=K<=9)的数字字符串(由0~9的数字组成,允许存在前导0如001),这个字符串是某个大数M的平方(即M*M)的末尾K位(M的位数大于K位),例如25是6052=605*605=366025的末尾2位,现在我们就来求这个大数。 当然满足条件的大数有很多,我们只要输出这个大数的末尾K位。输出时按照字符串的字典顺序从小到大输出。
Input
第一行,一个整数K,表示字符串的长度。
第二行,一个长度为K的数字字符串。
第二行,一个长度为K的数字字符串。
Output
若无解,则输出“No Answer”(引号不输出,注意大小写);
否则输出若干行,每行一个长度为K的字符串,按照字典顺序从小到大排列。
测试数据保证输出的行数不会超过1000行。
否则输出若干行,每行一个长度为K的字符串,按照字典顺序从小到大排列。
测试数据保证输出的行数不会超过1000行。
Sample Input Copy
3
001样例2
15
Sample Output Copy
001
249
251
499
501
749
751
999样例No Answer
HINT
数据规模:
对于30%的数据,K<=4;
对于60%的数据,K<=6;
对于100%的数据,K<=9。
对于30%的数据,K<=4;
对于60%的数据,K<=6;
对于100%的数据,K<=9。