Cod sursa(job #1208800)

Utilizator IulianBoboUAIC Boboc Iulian IulianBobo Data 16 iulie 2014 16:32:16
Problema Balanta Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.84 kb
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
	ifstream f("balanta.in");
	ofstream g("balanta.out");
	int vizG[1025],vizU[1025], n, m, i, j, k, r,st[613],dr[613],sol;
	f >> n >> m;
	for (i = 1; i <= n; ++i) vizU[i] = vizG[i] =1;
	for (i = 1; i <= m; ++i)
	{
		f >> k;
		for (j = 1; j <= k; ++j) f >> st[j];
		for (j = 1; j <= k; ++j) f >> dr[j];
		f >> r;
		if (r == 0)
		{
			for (j = 1; j <= k; ++j) vizU[st[j]] = vizU[dr[j]] = vizG[st[j]] = vizG[dr[j]]=0;
		}
		else if (r == 1)
		{
			for (j = 1; j <= k; ++j)
			{
				vizG[dr[j]] = 0;
			}
		}
		else for (j = 1; j <= k; ++j) vizG[st[j]] = 0;
	}
	k = 0;
	for (i = 1; i <= n; ++i)
	{
		if (vizG[i] == 1 && vizU[i] == 1)
		{
			++k;
			if (k == 1) sol = i;
		}
	}
	if (k > 1) g << 0;
	else g << sol;
	f.close();
	g.close();
	return 0;
}