Pagini recente » Cod sursa (job #452208) | Cod sursa (job #1036052) | Cod sursa (job #603906) | Cod sursa (job #267979) | Cod sursa (job #295074)
Cod sursa(job #295074)
#include<fstream.h>
#include<stdlib.h>
#include<string.h>
char m[36001][27];
int compar (const void *p, const void *q)
{ char x=*(char*)p, y=*(char*)q;
if (x>y) return 1;
if (x<y) return -1;
return 0;
}
int compar2 (const void *p, const void*q)
{
const char* x=(char*)p,*y=(char*)q;
if (strcmp(x,y)>0) return 1;
if (strcmp(x,y)<0) return -1;
return 0;
}
int main()
{
ifstream f1 ("restante.in");
ofstream f2 ("restante.out");
int id,n,i,nr=0;
f1>>n;
for (i=1; i<=n; i++)
{f1>>m[i];}
for (i=1; i<=n; i++) qsort (m[i],strlen(m[i]), sizeof(m[i][1]), compar);
qsort (m,n,sizeof(m[i]),compar2);
for (i=1; i<=n; i++) f2<<m[i]<<" ";
for (i=1; i<=n-1; i++)
{
id=i;
while (strcmp(m[i],m[i+1])==0) i++;
if (id!=i) continue;
else nr++;
}
if (strcmp(m[n-1],m[n])!=0) nr++;
f2<<nr;
return 0;
}