Submission #154175

# Submission time Handle Problem Language Result Execution time Memory
154175 2019-09-18T18:18:11 Z asifthegreat Split the Attractions (IOI19_split) C++14
11 / 100
126 ms 18808 KB
#include <bits/stdc++.h>
#include "split.h"
using namespace std;

const int N = 300000;
vector<int>graph[N];
int mark[N];
int vis[N];
int baki;

void dfs(int at){
	if(baki == 0)return;
	// printf("%d here am I \n",at);
	mark[at] = 2;
	baki--;
	vis[at] = true;
	for(auto i: graph[at]){
		if(vis[i] == true){
	
			// cout <<i << " how can it be visited?\n";
			continue;
		}

		dfs(i);
	}
}

vector<int> find_split(int n, int a, int b, int c, vector<int> p, vector<int> q) {
	vector<int> res;
		
	// vector<int> something;
	// something.push_back(a);
	// something.push_back(c);
	// something.push_back(b);
	// sort(something.first(),something.second());
	// a = something[0],b=something[1],c=something[2];

	for(int i = 0; i < p.size();i++){
		// printf("The pair is ( %d %d )\n",p[i],q[i] );
		graph[p[i]].push_back(q[i]);
		graph[q[i]].push_back(p[i]);
	}
	baki = b;
	// printf("%d\n",baki );
	memset(vis,0,sizeof vis);
	dfs(0);
	for(int i = 0; i < n;i++){
		if(!vis[i]){
			vis[i] = true;
			mark[i]= 1;
			break;
		}
	}
	for(int i = 0; i < n;i++){
		if(!vis[i]){
			vis[i] = true;
			mark[i]= 3;
			// break;
		}
	}
	for(int i = 0; i < n;i++){
		res.push_back(mark[i]);
	}
	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:38:19: 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 9 ms 8568 KB ok, correct split
2 Correct 9 ms 8568 KB ok, correct split
3 Correct 9 ms 8568 KB ok, correct split
4 Incorrect 10 ms 8568 KB invalid split: #1=1, #2=1, #3=2
5 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 9 ms 8568 KB ok, correct split
2 Correct 9 ms 8568 KB ok, correct split
3 Correct 9 ms 8568 KB ok, correct split
4 Correct 97 ms 17092 KB ok, correct split
5 Correct 80 ms 15480 KB ok, correct split
6 Correct 80 ms 15452 KB ok, correct split
7 Correct 91 ms 16944 KB ok, correct split
8 Correct 126 ms 18808 KB ok, correct split
9 Correct 94 ms 15480 KB ok, correct split
10 Correct 66 ms 15600 KB ok, correct split
11 Correct 68 ms 15600 KB ok, correct split
12 Correct 70 ms 15984 KB ok, correct split
# Verdict Execution time Memory Grader output
1 Incorrect 9 ms 8568 KB invalid split: #1=1, #2=1, #3=3
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 9 ms 8568 KB invalid split: #1=1, #2=2, #3=6
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 9 ms 8568 KB ok, correct split
2 Correct 9 ms 8568 KB ok, correct split
3 Correct 9 ms 8568 KB ok, correct split
4 Incorrect 10 ms 8568 KB invalid split: #1=1, #2=1, #3=2
5 Halted 0 ms 0 KB -