Pagini recente » Cod sursa (job #596479) | Cod sursa (job #654317) | Cod sursa (job #413542) | Cod sursa (job #2471292) | Cod sursa (job #157788)
Cod sursa(job #157788)
#include<stdio.h>
#include<string.h>
int x,ok,k,c,j,p,i,n,nr;
char aux2,aux[20],m[20],s[36001][20];
void sort(){
for(i=2;i<=k;i++){
c=i;
p=c>>1;
while((p)&&( strcmp(s[c],s[p])>0 )){
strcpy(aux,s[c]);
strcpy(s[c],s[p]);
strcpy(s[p],aux);
c=p;
p=c>>1;
}
}
for(i=k;i>1;i--){
strcpy(aux,s[i]);
strcpy(s[i],s[1]);
strcpy(s[1],aux);
p=1;
c=p<<1;
k--;
while(c<=k){
if(strcmp(s[c+1],s[c])>0&&c<k){c++;}
if(strcmp(s[c],s[p])>0){
strcpy(aux,s[p]);
strcpy(s[p],s[c]);
strcpy(s[c],aux);
p=c;
c=p<<1;
}
else{break;}
}
}
}
int main(){
FILE *f=fopen("restante.in","r");
fscanf(f,"%d",&n);
k=n;
for(j=1;j<=n;j++){
fscanf(f,"%s",m);
x=strlen(m);
ok=1;
while(ok){
ok=0;
for(i=0;i<x-1;i++)
if(m[i]>m[i+1]){
aux2=m[i];
m[i]=m[i+1];
m[i+1]=aux2;
ok=1;
}
}
strcpy(s[j],m);
}
fclose(f);
sort();
for(i=1;i<=n;i++){
if(strcmp(s[i],s[i-1])&&strcmp(s[i],s[i+1])) nr++;
}
FILE *g=fopen("restante.out","w");
fprintf(g,"%d",nr);
fclose(g);
return 0;
}