Submission #423972

# Submission time Handle Problem Language Result Execution time Memory
423972 2021-06-11T14:52:44 Z schse Split the Attractions (IOI19_split) C++17
18 / 100
112 ms 15268 KB
#include "split.h"
#include <bits/stdc++.h>
#ifndef EVAL
#include "grader.cpp"
#endif
using namespace std;

struct node
{
	vector<int> edges;
	bool been;
};

vector<int> res;
vector<int> order;
vector<node> g;

int A, B, C;

void dfs(int n)
{
	if (g[n].been)
		return;
	order.push_back(n);
	g[n].been = true;
	for (int i : g[n].edges)
		dfs(i);
	return;
}

vector<int> find_split(int n, int a, int b, int c, vector<int> p, vector<int> q)
{
	A = a, B = b, C = c;
	g.resize(n);
	res.resize(n);

	for (int i = 0; i < p.size(); i++)
	{
		g[p[i]].edges.push_back(q[i]);
		g[q[i]].edges.push_back(p[i]);
	}
	int stp = 0;
	for (stp = 0; stp < n; stp++)
	{
		if (g[stp].edges.size() == 1)
		{
			dfs(stp);
			break;
		}
	}
	if (stp == n)
		dfs(0);

	stp = 0;
	while (a--)
	{
		res[order[stp]] = 1;
		stp++;
	}
	while (b--)
	{
		res[order[stp]] = 2;
		stp++;
	}
	while (c--)
	{
		res[order[stp]] = 3;
		stp++;
	}
	return res;
}

Compilation message

split.cpp: In function 'std::vector<int> find_split(int, int, int, int, std::vector<int>, std::vector<int>)':
split.cpp:37:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   37 |  for (int i = 0; i < p.size(); i++)
      |                  ~~^~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 0 ms 204 KB ok, correct split
2 Correct 1 ms 204 KB ok, correct split
3 Correct 0 ms 204 KB ok, correct split
4 Correct 1 ms 204 KB ok, correct split
5 Correct 1 ms 204 KB ok, correct split
6 Correct 1 ms 204 KB ok, correct split
7 Correct 84 ms 15204 KB ok, correct split
8 Correct 107 ms 15160 KB ok, correct split
9 Correct 74 ms 15160 KB ok, correct split
10 Correct 88 ms 15148 KB ok, correct split
11 Correct 109 ms 15208 KB ok, correct split
# Verdict Execution time Memory Grader output
1 Correct 0 ms 204 KB ok, correct split
2 Correct 1 ms 204 KB ok, correct split
3 Correct 0 ms 204 KB ok, correct split
4 Correct 93 ms 14372 KB ok, correct split
5 Correct 89 ms 10672 KB ok, correct split
6 Correct 86 ms 15268 KB ok, correct split
7 Correct 72 ms 15172 KB ok, correct split
8 Correct 112 ms 14064 KB ok, correct split
9 Correct 99 ms 10564 KB ok, correct split
10 Correct 57 ms 10512 KB ok, correct split
11 Correct 51 ms 10528 KB ok, correct split
12 Correct 55 ms 10908 KB ok, correct split
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB ok, correct split
2 Incorrect 88 ms 10660 KB 2 components are not connected
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 204 KB 2 components are not connected
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 204 KB ok, correct split
2 Correct 1 ms 204 KB ok, correct split
3 Correct 0 ms 204 KB ok, correct split
4 Correct 1 ms 204 KB ok, correct split
5 Correct 1 ms 204 KB ok, correct split
6 Correct 1 ms 204 KB ok, correct split
7 Correct 84 ms 15204 KB ok, correct split
8 Correct 107 ms 15160 KB ok, correct split
9 Correct 74 ms 15160 KB ok, correct split
10 Correct 88 ms 15148 KB ok, correct split
11 Correct 109 ms 15208 KB ok, correct split
12 Correct 0 ms 204 KB ok, correct split
13 Correct 1 ms 204 KB ok, correct split
14 Correct 0 ms 204 KB ok, correct split
15 Correct 93 ms 14372 KB ok, correct split
16 Correct 89 ms 10672 KB ok, correct split
17 Correct 86 ms 15268 KB ok, correct split
18 Correct 72 ms 15172 KB ok, correct split
19 Correct 112 ms 14064 KB ok, correct split
20 Correct 99 ms 10564 KB ok, correct split
21 Correct 57 ms 10512 KB ok, correct split
22 Correct 51 ms 10528 KB ok, correct split
23 Correct 55 ms 10908 KB ok, correct split
24 Correct 1 ms 204 KB ok, correct split
25 Incorrect 88 ms 10660 KB 2 components are not connected
26 Halted 0 ms 0 KB -