168192025-05-13 17:48:07algoproKét csoportcpp17Elfogadva 100/100187ms24628 KiB
// UUID: 308c4560-5fae-4ce9-b8c8-d71d596400c2
#include <iostream>
#include <vector>
#include <queue>
#include <stack>
#include <set>
#include <map>
#include <limits.h>
#include <algorithm>
#include <math.h>
#include <array>

using namespace std;

vector<vector<int>> g;
vector<int> color;
vector<bool> altered;

void color2(int node)
{
	for (int neighbour : g[node])
	{
		if (color[neighbour] == -1)
		{
			color[neighbour] = !color[node];
			color2(neighbour);
		}
	}
}

bool good(int node)
{
	int cnt = 0;
	for (int neighbour : g[node])
	{
		if (color[neighbour] == color[node]) cnt++;
	}
	return cnt < 2;
}

void alter(int node)
{
	if (altered[node]) cerr << "Baj van!";
	color[node] = !color[node];
	altered[node] = true;
	for (int neighbour : g[node])
	{
		if (!good(neighbour)) alter(neighbour);
	}
}

int main()
{
	iostream::sync_with_stdio(0);
	cin.tie(0);

	int n;
	cin >> n;

	g.resize(n), color.resize(n, -1), altered.resize(n, false);
	for (int i = 0; i < n; i++)
	{
		int a;
		cin >> a;
		while (a != 0)
		{
			g[i].push_back(a-1);
			cin >> a;
		} 
	}

	for (int i = 0; i < n; i++)
	{
		if (color[i] == -1)
		{
			color[i] = 0;
			color2(i);
		}
	}

	for (int i = 0; i < n; i++)
	{
		if (!good(i)) alter(i);
	}

	vector<int> ans;
	ans.reserve(n);
	for (int i = 0; i < n; i++)
	{
		if (color[i] == 0) ans.push_back(i);
	}

	cout << ans.size() << '\n';
	for (int i = 0; i < ans.size(); i++)
	{
		cout << ans[i]+1 << ' ';
	}
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base100/100
1Elfogadva0/01ms316 KiB
2Elfogadva0/052ms6708 KiB
3Elfogadva3/31ms316 KiB
4Elfogadva3/31ms500 KiB
5Elfogadva3/31ms316 KiB
6Elfogadva3/31ms316 KiB
7Elfogadva3/31ms508 KiB
8Elfogadva2/21ms316 KiB
9Elfogadva3/31ms316 KiB
10Elfogadva3/31ms316 KiB
11Elfogadva3/32ms500 KiB
12Elfogadva3/36ms832 KiB
13Elfogadva3/36ms1076 KiB
14Elfogadva3/36ms1076 KiB
15Elfogadva6/650ms6692 KiB
16Elfogadva7/754ms6740 KiB
17Elfogadva7/759ms8244 KiB
18Elfogadva6/6100ms13108 KiB
19Elfogadva6/6111ms13360 KiB
20Elfogadva6/6120ms16348 KiB
21Elfogadva6/6155ms19508 KiB
22Elfogadva7/7163ms19764 KiB
23Elfogadva7/7186ms22836 KiB
24Elfogadva7/7187ms24628 KiB