CSES - KILO 2017 5/5 - Results
Submission details
Task:Brexit
Sender:team univelka
Submission time:2017-10-03 17:33:04 +0300
Language:C++
Status:READY
Result:ACCEPTED
Test results
testverdicttime
#1ACCEPTED0.05 sdetails
#2ACCEPTED0.05 sdetails
#3ACCEPTED0.05 sdetails
#4ACCEPTED0.05 sdetails
#5ACCEPTED0.04 sdetails
#6ACCEPTED0.04 sdetails
#7ACCEPTED0.05 sdetails
#8ACCEPTED0.07 sdetails
#9ACCEPTED0.07 sdetails
#10ACCEPTED0.04 sdetails
#11ACCEPTED0.05 sdetails
#12ACCEPTED0.05 sdetails
#13ACCEPTED0.06 sdetails
#14ACCEPTED0.07 sdetails
#15ACCEPTED0.05 sdetails
#16ACCEPTED0.06 sdetails
#17ACCEPTED0.18 sdetails
#18ACCEPTED0.18 sdetails
#19ACCEPTED0.15 sdetails
#20ACCEPTED0.09 sdetails
#21ACCEPTED0.10 sdetails
#22ACCEPTED0.08 sdetails
#23ACCEPTED0.07 sdetails
#24ACCEPTED0.10 sdetails
#25ACCEPTED0.18 sdetails
#26ACCEPTED0.22 sdetails
#27ACCEPTED0.23 sdetails
#28ACCEPTED0.20 sdetails
#29ACCEPTED0.15 sdetails
#30ACCEPTED0.17 sdetails
#31ACCEPTED0.19 sdetails
#32ACCEPTED0.16 sdetails
#33ACCEPTED0.21 sdetails
#34ACCEPTED0.25 sdetails
#35ACCEPTED0.17 sdetails

Code

#include <iostream>
#include <vector>

const int N = 2 * (1e5) + 5;
const int inf = 1e9;
std::vector<int> conns [N];
int rem [N];

int main() {
	std::ios_base::sync_with_stdio(false);
	std::cin.tie(0);

	int n, m, x, l;
	std::cin >> n >> m >> x >> l;
	--x; --l;

	for (int i = 0; i < m; ++i) {
		int a, b;
		std::cin >> a >> b;
		--a; --b;
		conns[a].push_back(b);
		conns[b].push_back(a);
	}
	for (int i = 0; i < n; ++i) {
		rem[i] = (int)conns[i].size();
	}
	bool res = false;
	rem[l] = inf;
	std::vector<int> remove;
	remove.push_back(l);
	for (int j = 0; j < (int)remove.size(); ++j) {
		int i = remove[j];
		if (i == x) res = true;
		for (int s = 0; s < (int)conns[i].size(); ++s) {
			int t = conns[i][s];
			--rem[t];
			if (rem[t] <= (int)conns[t].size() / 2) {
				remove.push_back(t);
				rem[t] = inf;
			}
		}
	}
	std::cout << (res ? "leave" : "stay") << '\n';
}

Test details

Test 1

Verdict: ACCEPTED

input
4 4 4 1
1 2
1 3
2 3
3 4

correct output
leave

user output
leave

Test 2

Verdict: ACCEPTED

input
8 11 4 7
1 4
1 6
4 6
1 8
...

correct output
stay

user output
stay

Test 3

Verdict: ACCEPTED

input
8 8 8 1
1 2
1 3
2 4
3 5
...

correct output
leave

user output
leave

Test 4

Verdict: ACCEPTED

input
7 8 7 1
1 2
1 3
1 7
2 4
...

correct output
leave

user output
leave

Test 5

Verdict: ACCEPTED

input
8 10 5 1
1 2
1 3
1 7
2 4
...

correct output
leave

user output
leave

Test 6

Verdict: ACCEPTED

input
14 36 11 1
1 2
1 3
1 4
1 5
...

correct output
stay

user output
stay

Test 7

Verdict: ACCEPTED

input
14 35 11 1
1 2
1 3
1 4
1 5
...

correct output
leave

user output
leave

Test 8

Verdict: ACCEPTED

input
17 30 8 11
1 2
2 3
3 4
4 5
...

correct output
leave

user output
leave

Test 9

Verdict: ACCEPTED

input
4 2 3 1
1 3
2 4

correct output
leave

user output
leave

Test 10

Verdict: ACCEPTED

input
4 2 2 4
1 4
2 3

correct output
stay

user output
stay

Test 11

Verdict: ACCEPTED

input
20 19 6 17
1 19
8 9
16 18
4 5
...

correct output
leave

user output
leave

Test 12

Verdict: ACCEPTED

input
2 1 2 1
1 2

correct output
leave

user output
leave

Test 13

Verdict: ACCEPTED

input
2 1 1 1
1 2

correct output
leave

user output
leave

Test 14

Verdict: ACCEPTED

input
8 9 8 1
1 2
1 3
1 4
2 5
...

correct output
stay

user output
stay

Test 15

Verdict: ACCEPTED

input
2297 2679 1051 742
617 742
694 1379
156 742
36 531
...

correct output
stay

user output
stay

Test 16

Verdict: ACCEPTED

input
9 36 3 3
1 2
1 3
1 4
1 5
...

correct output
leave

user output
leave

Test 17

Verdict: ACCEPTED

input
150670 300000 64138 127023
50117 131948
138058 140437
80088 113710
1091 149845
...

correct output
leave

user output
leave

Test 18

Verdict: ACCEPTED

input
75351 299756 67121 54519
13237 54519
21423 29557
45590 57906
27901 54519
...

correct output
leave

user output
leave

Test 19

Verdict: ACCEPTED

input
75351 299755 66319 71133
70626 71133
9534 30979
52767 59421
3512 62528
...

correct output
stay

user output
stay

Test 20

Verdict: ACCEPTED

input
100000 100000 1 100000
1 2
2 3
3 4
4 5
...

correct output
leave

user output
leave

Test 21

Verdict: ACCEPTED

input
100000 99999 1 100000
1 2
1 3
1 4
1 5
...

correct output
stay

user output
stay

Test 22

Verdict: ACCEPTED

input
100000 99999 100000 1
1 2
1 3
1 4
1 5
...

correct output
leave

user output
leave

Test 23

Verdict: ACCEPTED

input
623 100000 201 369
1 2
2 3
1 3
2 4
...

correct output
stay

user output
stay

Test 24

Verdict: ACCEPTED

input
10007 100000 8980 3955
1 2
2 3
3 4
4 5
...

correct output
stay

user output
stay

Test 25

Verdict: ACCEPTED

input
200000 300000 98405 200000
91091 107131
187868 200000
169168 200000
107283 200000
...

correct output
leave

user output
leave

Test 26

Verdict: ACCEPTED

input
200000 200003 36335 152343
118063 160421
103074 184863
39554 133784
111165 151835
...

correct output
stay

user output
stay

Test 27

Verdict: ACCEPTED

input
200000 200003 36335 152343
118063 160421
103074 184863
39554 133784
111165 151835
...

correct output
leave

user output
leave

Test 28

Verdict: ACCEPTED

input
200000 199995 48807 188921
125668 137213
58484 92270
149853 172371
147281 183987
...

correct output
stay

user output
stay

Test 29

Verdict: ACCEPTED

input
150003 300000 5769 81807
1701 81807
67930 81807
95197 101956
8464 95197
...

correct output
stay

user output
stay

Test 30

Verdict: ACCEPTED

input
150003 300000 113708 52542
20542 140674
113708 118110
53131 140674
106124 140674
...

correct output
leave

user output
leave

Test 31

Verdict: ACCEPTED

input
150002 299998 108658 134482
7967 120234
7967 69327
4545 7967
48480 134482
...

correct output
leave

user output
leave

Test 32

Verdict: ACCEPTED

input
150002 299998 111144 48353
29987 48353
48353 80095
75893 89146
88333 111144
...

correct output
stay

user output
stay

Test 33

Verdict: ACCEPTED

input
199999 299996 111739 12359
173419 189883
35930 189883
72825 189883
175798 189883
...

correct output
leave

user output
leave

Test 34

Verdict: ACCEPTED

input
200000 299997 24068 147603
15273 189931
57932 189931
147603 188966
36101 147603
...

correct output
stay

user output
stay

Test 35

Verdict: ACCEPTED

input
200000 199999 182498 116219
59555 62379
33156 181870
103953 174756
101778 110925
...

correct output
leave

user output
leave