Pagini recente » Cod sursa (job #1978856) | Cod sursa (job #3239253) | Cod sursa (job #1818972) | Cod sursa (job #1211072) | Cod sursa (job #421570)
Cod sursa(job #421570)
#include<stdio.h>
#include<stdlib.h>
FILE *fin,*fout;
unsigned int v[30],i,j,k,min;
char ch;
int main(){
fin=fopen("ordine.in","r");
fout=fopen("ordine.out","w");
while(!feof(fin)){
fscanf(fin,"%c",&ch);
if(ch>='a' && ch<='z'){v[ch-'a']++;}
}
j=0;
for(i=1;i<26;i++){
if((v[i]!=0) && (v[j]!=0)){
if(v[i]<v[j]){min=i;}
else{min=j;}
for(k=1;k<=v[min];k++){
fprintf(fout,"%c%c",'a'+j,'a'+i);
}
v[i]-=min;
v[j]-=min;
if((v[j]==0) && (v[i]!=0)){j=i;}
}
if((v[j]==0) && (v[i]!=0)){j=i;}
}
fclose(fin);
fclose(fout);
return 0;}