Pagini recente » Cod sursa (job #2023632) | Cod sursa (job #2047197) | Cod sursa (job #1645586) | Cod sursa (job #1569284) | Cod sursa (job #394893)
Cod sursa(job #394893)
using namespace std;
#include<cstdio>
#include<fstream>
#include<iostream>
#include<algorithm>
#include<cstring>
int a[36005][18],n,rez=0,b[36005];
void citire()
{
ifstream fin("restante.in");
fin>>n;
char c[17];
int i;
fin.getline(c,100);
for(int j=1;j<=n;j++)
{
fin.getline(c,20);
for(i=0;c[i];i++)
a[j][i+1]=int(c[i]);
a[j][0]=i;
sort(a[j]+1, a[j]+a[j][0]+1);
b[j]=1;
}
}
void afis()
{
int i,j;
for(i=1;i<=n;i++)
printf("%d ", b[i]);
printf("\n");
printf("%d\n",n);
for(i=1;i<=n;i++)
{
for(j=0;j<=a[i][0];j++)
printf("%d ", a[i][j]);
printf("\n");
}
printf("\n");
}
int egal(int i1,int i2)
{
if(a[i1][0]!=a[i2][0])
return 0;
else
{
int i;
for(i=1;i<=a[i1][0];i++)
{
if(a[i1][i]!=a[i2][i])
{
return 0;
}
}
return 1;
}
}
int main()
{
freopen("restante.out","w",stdout);
citire();
//afis();
int i,j;
for(i=1;i<n;i++)
for(j=i+1;j<=n;j++)
{
if(egal(i,j)==1)
b[i]=0,b[j]=0;
}
for(i=1;i<=n;i++)
if(b[i]==1)
rez++;
printf("%d", rez);
return 0;
}