#include<stdio.h>
#include<string.h>
#include<math.h>
#include<malloc.h>
//已知xyz+yzz=n,其中n是一个正整数,x、y、z都是数字(0-9),
//编写一个程序求出x、y、z分别代表什么数字。如果无解,则输出“No Answer”
//注意:xyz和yzz表示一个三位数,而不是表示x*y*z和y*z*z。
//输入一个正整数n。
//输出一行,包含x、y、z的值,每个数值占4列。
int main()
{
//思路:注意一个三位数的百位数字不能为0。for循环来匹配
int flag=1;
int n=0;
scanf("%d",&n);
for(int yzz=0,xyz=110,x=1,y=1,z=0;xyz<=999;xyz++)
{
{
// yzz=y*100+z*10+z;
x=xyz/100;//前3行不能跟最后一个调换位置,不然会错过一些数
y=xyz/10%10;
z=xyz%10;
yzz=y*100+z*10+z;
}
if(x==0||y==0)
{
continue;//如果出现了x或y等于0,代表着不是3位数的也被算上了,
//但是不让其输出,用continue跳出该次循环
}
if((xyz+yzz)==n)
{
flag=0;
printf("%4d%4d%4d",x,y,z);
}
}
if(flag)printf("No Answer");
return 0;//今天又是没带return 0的一天
}