Cod sursa(job #125786)

Utilizator byndrsnAlina Ene byndrsn Data 20 ianuarie 2008 18:07:35
Problema Restante Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <iostream>
#include <fstream>
#include <vector>
#include <string>
#include <algorithm>
#include <cstdio>

using namespace std;

int N;
string s;
vector<string> words;
ifstream fin;
ofstream fout;

bool original(int pos) {
	if (pos > 0 && words[pos - 1].compare(words[pos]) == 0)
		return false;

	if (pos < N - 1 && words[pos + 1].compare(words[pos]) == 0)
		return false;

	return true;
}

int main(void) {
	fin.open("restante.in");
	fout.open("restante.out");

	fin >> N;

	for (int i = 0; i < N; ++ i) {
		fin >> s;
		sort(s.begin(), s.end());
		words.push_back(s);
	}

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

	int ret = 0;

	for (int i = 0; i < N; ++ i)
		if (original(i)) {
			++ ret;

			//cerr << i << endl;
		}

	fout << ret << endl;

	return 0;
}