Cod sursa(job #183224)

Utilizator Mishu91Andrei Misarca Mishu91 Data 21 aprilie 2008 20:51:23
Problema Restante Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.88 kb
// Restante - Infoarena

#include <cstdio>
#include <string>
#include <algorithm>
#include <vector>

#define Nmax 36000

using namespace std;

vector <string> s;

int N;

void citire()
{
    char x[1000];
    scanf("%d",&N);

    for(int i=0; i<N; i++)
    {
        scanf("%s",&x);
        s.push_back(string(x));
    }
}

char viz[Nmax] ;

void solve()
{
    for(int i=0; i<N; i++)
        sort(s[i].begin(),s[i].end());

    sort(s.begin(),s.end());

    int nr = N;

    for(int i=1; i<N; i++)
    {
        if(s[i-1] != s[i]) continue;

        if(viz[i-1] == 1)
        {
            nr--, viz[i] = 1;
            continue;
        }

        viz[i-1] = viz[i] = 1;
        nr -= 2;
    }

    printf("%d\n",nr);
}

int main()
{
    freopen("restante.in","r",stdin);
    freopen("restante.out","w",stdout);

    citire();
    solve();
}