Pagini recente » Cod sursa (job #567657) | Cod sursa (job #2977279) | Cod sursa (job #858424) | Cod sursa (job #60439) | Cod sursa (job #280355)
Cod sursa(job #280355)
#include <stdio.h>
#include <string.h>
FILE *f, *g;
int i, j, n, inj, sw, t, k;
char v[36001][16], aux;
void shell(void)
{
for (i=1;i<=n;i++)
{
t=strlen(v[i])-1;
inj=t;
while (inj>1)
{
inj/=2;
sw=0;
while (!sw)
{
sw=1;
for (j=0;j<t-inj+1;j++)
if (v[i][j]>v[i][j+inj])
{
aux=v[i][j];
v[i][j]=v[i][j+inj];
v[i][j+1]=aux;
sw=0;
}
}
}
}
}
int main(void)
{
f=fopen("restante.in", "r");
g=fopen("restante.out", "w");
fscanf(f, "%d", &n);
fscanf(f, "%c", &v[0][0]);
for (i=1;i<=n;i++)
{
fgets(v[i], 16, f);
if (i!=n)
v[i][strlen(v[i])-1]='\0';
}
shell();
for (i=1;i<n;i++)
{
sw=0;
for (j=i+1;j<=n;j++)
if (!strcmp(v[i], v[j]))
{
sw=1;
break;
}
if (!sw)
k++;
}
fprintf(g, "%d", k);
fcloseall();
return 0;
}