Submission #147634

# Submission time Handle Problem Language Result Execution time Memory
147634 2019-08-30T10:38:20 Z nandonathaniel Split the Attractions (IOI19_split) C++14
11 / 100
120 ms 12972 KB
#include "split.h"
#include <bits/stdc++.h>
using namespace std;
const int MAXN=100005;
int cntB,warna[MAXN];
vector<int> adj[MAXN];
bool visited[MAXN];
int sudah=0;
bool keluar=false;
void dfs(int now){
	//cout << "now " << now << endl;
	if(sudah==cntB){
		keluar=true;
		return;
	}
	visited[now]=true;
	warna[now]=2;
	sudah++;
	for(int i=0;i<adj[now].size();i++){
		int nxt=adj[now][i];
		if(!visited[nxt]){
			dfs(nxt);
		}
	}
}

vector<int> find_split(int n, int a, int b, int c, vector<int> p, vector<int> q) {
	memset(visited,0,sizeof(visited));
	memset(warna,0,sizeof(warna));
	cntB=b;
	vector<int> res;
	for(int i=0;i<p.size();i++){
		adj[p[i]].push_back(q[i]);
		adj[q[i]].push_back(p[i]);
	}
	dfs(0);
	bool sudah=false;
	for(int i=0;i<n;i++){
		if(warna[i]==0){
			if(!sudah){
				warna[i]=1;
				sudah=true;
			}
			else warna[i]=3;
		}
		res.push_back(warna[i]);
	}
	return res;
}

Compilation message

split.cpp: In function 'void dfs(int)':
split.cpp:19:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int i=0;i<adj[now].size();i++){
              ~^~~~~~~~~~~~~~~~
split.cpp: In function 'std::vector<int> find_split(int, int, int, int, std::vector<int>, std::vector<int>)':
split.cpp:32:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int i=0;i<p.size();i++){
              ~^~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 5 ms 3408 KB ok, correct split
2 Correct 5 ms 3192 KB ok, correct split
3 Correct 4 ms 3196 KB ok, correct split
4 Incorrect 5 ms 3064 KB invalid split: #1=1, #2=1, #3=2
5 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 4 ms 3192 KB ok, correct split
2 Correct 4 ms 3196 KB ok, correct split
3 Correct 4 ms 3192 KB ok, correct split
4 Correct 102 ms 11380 KB ok, correct split
5 Correct 79 ms 9848 KB ok, correct split
6 Correct 72 ms 9720 KB ok, correct split
7 Correct 89 ms 11300 KB ok, correct split
8 Correct 120 ms 12972 KB ok, correct split
9 Correct 77 ms 9720 KB ok, correct split
10 Correct 61 ms 9840 KB ok, correct split
11 Correct 72 ms 9832 KB ok, correct split
12 Correct 82 ms 10224 KB ok, correct split
# Verdict Execution time Memory Grader output
1 Incorrect 5 ms 3192 KB invalid split: #1=1, #2=1, #3=3
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 4 ms 3192 KB invalid split: #1=1, #2=2, #3=6
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 5 ms 3408 KB ok, correct split
2 Correct 5 ms 3192 KB ok, correct split
3 Correct 4 ms 3196 KB ok, correct split
4 Incorrect 5 ms 3064 KB invalid split: #1=1, #2=1, #3=2
5 Halted 0 ms 0 KB -