Cod sursa(job #978698)

Utilizator manutrutaEmanuel Truta manutruta Data 29 iulie 2013 15:23:04
Problema Restante Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <cstring>
#include <iostream>
#include <fstream>
#include <string>
#include <algorithm>
#include <bitset>
using namespace std;

#define MAXN 36010

ifstream f("restante.in");
ofstream g("restante.out");

int n;
string a[MAXN];
bitset<MAXN> bad;
int solutie;

int main()
{
    f >> n;
    f.get();
    for (int i = 1; i <= n; i++) {
        getline(f, a[i]);
        sort(a[i].begin(), a[i].end());
    }

    sort(a + 1, a + n + 1);

    for (int i = 1; i < n; i++) {
        if(a[i] == a[i + 1]) {
            bad[i] = true;
            bad[i + 1] = true;
        }
    }

    for (int i = 1; i <= n; i++) {
        if (bad[i] == 0) {
            solutie++;
        }
    }

    cout << solutie;

    return 0;
}