要点:按从小到大的顺序输出!
using namespace std;
#include<bits/stdc++.h>
int main(){
int n;
int n1,n2;
int p1,p2;
while(cin>>n){
for(p1=1;p1<=9&&p1<=n/2;p1++){//5位
for(p2=p1;p2-p1<=9&&p2<=n/2;p2++){
if(n-2*p2<=9){
cout<<p1<<p2-p1<<n-2*p2<<p2-p1<<p1<<'\n';
}
}
}
if(n%2==0){
n2=n/2;//6位
for(p1=1;p1<=9&&p1<=n2;p1++){
for(p2=p1;(p2-p1)<=9&&p2<=n2;p2++){
if(n2-p1-(p2-p1)<=9){
cout<<p1<<p2-p1<<n2-p2<<n2-p2<<p2-p1<<p1<<'\n';
}
}
}
}
}
return 0;
}