#include <iostream> #include <stdio.h> #include <map> #include <vector> using namespace std; map<int,int> m,n; vector<int> den[80]; vector<int> numer[80]; int main() { int cnt,org; for(int i=0;i<80;i++) { den[i].clear(); numer[i].clear(); } for(int i=1234;i<=98765;i++) { if(i%10==0 && i<10000) continue; org=i; m.clear(); if(i<10000) m[0]=1; while(org) { if(m[org%10]) break; m[org%10]=1; org/=10; } if(org) continue; cnt=1; for(int j=i*2;j<100000;j+=i) { cnt++; if(i<10000 && j<10000) continue; org=j; n.clear(); while(org) { if(m[org%10]==1 || n[org%10]==1) break; n[org%10]=1; org/=10; } if(org) continue; if(i<10000 && n[0]==1) continue; numer[cnt].push_back(j); den[cnt].push_back(i); } } int N,c=0; while(cin>>N) { if(N==0) break; if(c) cout<<"\n"; c=1; if(den[N].size()==0) cout<<"There are no solutions for "<<N<<".\n"; else { //cout<<den[N].size()<<"\n"; for(int i=0;i<den[N].size();i++) { if(numer[N][i]<10000) cout<<0; cout<<numer[N][i]; cout<<" / "; if(den[N][i]<10000) cout<<0; cout<<den[N][i]<<" = "<<N<<"\n"; } } //cout<<"\n"; } return 0; }