Pagini recente » Cod sursa (job #2395297) | Cod sursa (job #2587347) | Cod sursa (job #2136256) | Cod sursa (job #2625609) | Cod sursa (job #349649)
Cod sursa(job #349649)
#include<fstream>
#define dmax 1000003
using namespace std;
ifstream in("ordine.in");
ofstream out("ordine.out");
int x[30],l;
char sir[dmax],u;
void scrie(int k,int nr)
{ int i,ok=0;
if(k<l)
{ for(i=0;i<nr;i++)
if(x[i])
{ u='a'+i;
out<<u;
x[i]--;
ok=1;
scrie(k+1,i);
}
if(x[nr]&&ok)
{ u='a'+nr;
out<<u;
x[nr]--;
scrie(k+1,nr);
}
}
}
int main()
{ int i;
in.getline(sir,dmax,'\n');
in.close();
l=strlen(sir);
for(i=0;i<l;i++)
x[sir[i]-'a']++;
scrie(0,29);
out.close();
return 0;
}