点击打开链接http://acm.hdu.edu.cn/showproblem.php?pid=1271
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int num[100];
int main()
{
int n;
while(~scanf("%d",&n),n)
{
int a,b,c;
int t=0;
memset(num,0,sizeof(num));
a=0;
for(int i=1;i<=n;i*=10)
{
b=(n/i)%11;
c=(n/i)/11;
if((b+c)!=0 && b<10)
{
a=(n-b*i-11*c*i)/2;
if(n==a*2+b*i+11*c*i)
{
num[t++]=a+b*i+10*c*i;
}
}
b--;
if((b+c)!=0 && b>=0)
{
a=(n-b*i-11*c*i)/2;
if(n==a*2+b*i+11*c*i)
{
num[t++]=a+b*i+10*c*i;
}
}
}
if(t==0)
{
printf("No solution.\n");
}
else{
sort(num,num+t);
printf("%d",num[0]);
for(int i=1;i<t;i++)
{
if(num[i]!=num[i-1])
{
printf(" %d",num[i]);
}
}
printf("\n");
}
}
return 0;
}