Submission #350773

# Submission time Handle Problem Language Result Execution time Memory
350773 2021-01-19T08:17:21 Z amunduzbaev Parachute rings (IOI12_rings) C++14
20 / 100
4000 ms 948 KB
#ifndef EVAL
#include "grader.cpp"
#endif

#include "bits/stdc++.h"
using namespace std;

#define pb push_back
#define ss second
#define ff first

const int N = 5e3+5;
int n;
vector<pair<int, int>> edges[N];
int used[N], vis[N];

void Init(int nn) { n = nn; }

int last;
void Link(int A, int B) {
	edges[A].pb({B, ++last});
	edges[B].pb({A, last});
}

bool dfs(int u, int p){
	if(vis[u]) return 0;
	int cnt = 0;
	bool ok = 1;
	vis[u] = 1;
	for(auto x:edges[u]){
		if(used[x.ss] || x.ff == p) continue;
		if(cnt) return 0;
		cnt++; 
		ok &= dfs(x.ff, u);
	}return ok;
}

int CountCritical(){
	memset(used, 0, sizeof used);
	int cnt = 0;
	for(int i=0;i<n;i++){
		for(auto x:edges[i]) used[x.ss] = 1;
		vis[i] = 1;
		bool ok = 1;
		for(int j=0;j<n && ok;j++){
			if(!vis[j]){
				int cnt = 0;
				for(auto x:edges[j]){
					if(used[x.ss]) continue;
					cnt++;
					ok &= dfs(x.ff, j);
				}
				if(cnt > 2) ok = 0;
			}
		}
		for(auto x:edges[i]) used[x.ss] = 0;
		memset(vis, 0, sizeof vis);
		cnt += ok;
	} 
	return cnt;
}

/*

7 13 
-1
1 2 
-1
0 5 
-1
2 0 
-1
3 2 
-1
3 5 
-1
4 3 
-1


*/
# Verdict Execution time Memory Grader output
1 Correct 1 ms 492 KB Output is correct
2 Correct 154 ms 620 KB Output is correct
3 Correct 54 ms 748 KB Output is correct
4 Correct 10 ms 492 KB Output is correct
5 Correct 192 ms 620 KB Output is correct
6 Correct 715 ms 948 KB Output is correct
7 Correct 9 ms 620 KB Output is correct
8 Correct 58 ms 620 KB Output is correct
9 Correct 207 ms 876 KB Output is correct
10 Correct 89 ms 748 KB Output is correct
# Verdict Execution time Memory Grader output
1 Runtime error 1 ms 748 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 492 KB Output is correct
2 Correct 154 ms 620 KB Output is correct
3 Correct 54 ms 748 KB Output is correct
4 Correct 10 ms 492 KB Output is correct
5 Correct 192 ms 620 KB Output is correct
6 Correct 715 ms 948 KB Output is correct
7 Correct 9 ms 620 KB Output is correct
8 Correct 58 ms 620 KB Output is correct
9 Correct 207 ms 876 KB Output is correct
10 Correct 89 ms 748 KB Output is correct
11 Execution timed out 4059 ms 736 KB Time limit exceeded
12 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 492 KB Output is correct
2 Correct 154 ms 620 KB Output is correct
3 Correct 54 ms 748 KB Output is correct
4 Correct 10 ms 492 KB Output is correct
5 Correct 192 ms 620 KB Output is correct
6 Correct 715 ms 948 KB Output is correct
7 Correct 9 ms 620 KB Output is correct
8 Correct 58 ms 620 KB Output is correct
9 Correct 207 ms 876 KB Output is correct
10 Correct 89 ms 748 KB Output is correct
11 Execution timed out 4059 ms 736 KB Time limit exceeded
12 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 492 KB Output is correct
2 Correct 154 ms 620 KB Output is correct
3 Correct 54 ms 748 KB Output is correct
4 Correct 10 ms 492 KB Output is correct
5 Correct 192 ms 620 KB Output is correct
6 Correct 715 ms 948 KB Output is correct
7 Correct 9 ms 620 KB Output is correct
8 Correct 58 ms 620 KB Output is correct
9 Correct 207 ms 876 KB Output is correct
10 Correct 89 ms 748 KB Output is correct
11 Runtime error 1 ms 748 KB Execution killed with signal 11 (could be triggered by violating memory limits)
12 Halted 0 ms 0 KB -