Pagini recente » Cod sursa (job #935887) | Cod sursa (job #1222022) | Cod sursa (job #1727027) | Cod sursa (job #2200148) | Cod sursa (job #128067)
Cod sursa(job #128067)
#include <fstream>
#include <string.h>
#define CMax 20
#define NMax 36005
std::ifstream f( "restante.in" );
std::ofstream g( "restante.out" );
long n;
char cuv[NMax][CMax];
void citire();
void rez();
int sort( const void* a, const void* b )
{
return ( *(char*)a - *(char*)b );
}
int sort2( const void* a, const void*b )
{
return strcmp((char*)a,(char*)b);
}
int main()
{
citire();
rez();
return 0;
}
void rez()
{
int i, app, orig = 0;
char prev[CMax];
strcpy( prev, cuv[0] ); app = 0;
for (i=1; i<=n; i++)
{
if ( strcmp(prev,cuv[i]) == 0 )
{
app++;
}
else
{
if ( app == 0 )
orig++;
app = 0;
}
strcpy(prev, cuv[i]);
}
g << orig << '\n';
}
void citire()
{
long i, j, k, lg, lit[30];
char aux[CMax];
f >> n;
for (i=0; i<n; i++)
{
f >> aux;
qsort( (void*) aux, strlen(aux), sizeof(aux[0]), sort );
strcpy( cuv[i], aux );
}
qsort( (void*) cuv[0], n, sizeof(cuv[0]), sort2 );
strcpy( cuv[n], " " );
}