Pagini recente » Cod sursa (job #1674141) | Cod sursa (job #2835519) | Cod sursa (job #3143506) | Cod sursa (job #3213232) | Cod sursa (job #128098)
Cod sursa(job #128098)
#include <fstream.h>
#include <string.h>
int n;
char mat[36010][30];
int nr;
ifstream fin("restante.in");
ofstream fout("restante.out");
void citire()
{
char b[20];
fin>>n;
fin.getline(b,10);
for (int i=0;i<n;i++)
{
fin.getline (mat[i],20);
}
fin.close();
}
void qsort(char a[])
{
int ok=1,p=strlen(a);
while (ok)
{
ok=0;
p--;
for (int i=0;i<p;i++)
if (a[i]>a[i+1])
{
char aux=a[i];
a[i]=a[i+1];
a[i+1]=aux;
ok=1;
}
}
}
void ord()
{
int ok=1,p=n;
while (ok)
{
ok=0;
p--;
for (int i=0;i<p;i++)
if (strcmp(mat[i],mat[i+1])>1)
{
char *p;
strcpy(p,mat[i]);
strcpy(mat[i],mat[i+1]);
strcpy(mat[i+1],p);
ok=1;
}
}
}
void numar()
{
for (int i=0;i<n;i++)
qsort(mat[i]);
ord();
for (int j=1;j<n-1;j++)
nr+=((strcmp(mat[j],mat[j-1])!=0) +(strcmp (mat[j],mat[j+1])!=0)==2);
if (n>2){
nr+=(strcmp(mat[0],mat[1])!=0);
nr+=(strcmp(mat[n-1],mat[n-2])!=0);
}
else
nr+=(strcmp(mat[0],mat[1])!=0);
}
int main()
{
citire();
numar();
fout<<nr<<"\n";
fout.close();
return 0;
}