Pagini recente » Cod sursa (job #205942) | Cod sursa (job #2340207) | Cod sursa (job #2538533) | Cod sursa (job #2187158) | Cod sursa (job #1727324)
#include <fstream>
#include <iostream>
#include <math.h>
#include <algorithm>
using namespace std;
#define ll long long
#define llu long long unsigned
#define pb push_back
#define mp make_pair
string problemName = "ordine";
string inFile = problemName+".in";
string outFile = problemName+".out";
ifstream fin(inFile.c_str());
ofstream fout(outFile.c_str());
int ap[26];
int main(){
string s;
fin>>s;
int i,st,dr;
int n = s.size();
for(i = 0;i < n;i++){
ap[s[i]-'a']++;
}
string ans = "";
char ch1,ch2;
for(st = 0;st < 26;st++){
if(ap[st]){
ch1 = st+'a';
for(dr = st+1;dr < 26 && ap[st];dr++){
if(ap[dr]){
ch2 = dr+'a';
for(;ap[st] > 1 && ap[dr];){
ans += ch1;
ans += ch2;
ap[st]--;
ap[dr]--;
}
}
if(ap[st] == 1){
ap[st]--;
ans += ch1;
break;
}
}
if(ap[st] == 1){
ap[st]--;
ans += ch1;
}
}
}
fout<<ans;
return 0;
}