Submission #31475

# Submission time Handle Problem Language Result Execution time Memory
31475 2017-08-29T06:27:14 Z minkank Senior Postmen (BOI14_postmen) C++14
55 / 100
500 ms 115336 KB
#include <iostream>
#include <set>
#include <stack>
using namespace std;

const int N = 5e5 + 5;
int n, m, check[N];
set<int> s[N];
stack<int> st;

void dfs(int u) {
	while(s[u].size()) {
		int v = *s[u].begin();
		s[u].erase(v); s[v].erase(u);
		dfs(v);
	}
	if(check[u]) {
		cout << u << ' ';
		while(st.top() != u) cout << st.top() << ' ', check[st.top()] = false, st.pop(); st.pop();
		cout << endl;		
	}
	check[u] = 1; st.push(u);
}

int main() {
	cin >> n >> m;
	for(int i = 1; i <= m; ++i) {
		int u, v;
		cin >> u >> v;
		s[u].insert(v); s[v].insert(u);
	}
	dfs(1);
}

Compilation message

postmen.cpp: In function 'void dfs(int)':
postmen.cpp:19:3: warning: this 'while' clause does not guard... [-Wmisleading-indentation]
   while(st.top() != u) cout << st.top() << ' ', check[st.top()] = false, st.pop(); st.pop();
   ^~~~~
postmen.cpp:19:84: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'while'
   while(st.top() != u) cout << st.top() << ' ', check[st.top()] = false, st.pop(); st.pop();
                                                                                    ^~
# Verdict Execution time Memory Grader output
1 Correct 19 ms 23808 KB Output is correct
2 Correct 17 ms 23808 KB Output is correct
3 Correct 23 ms 23808 KB Output is correct
4 Correct 23 ms 24332 KB Output is correct
5 Correct 18 ms 24064 KB Output is correct
6 Correct 32 ms 24624 KB Output is correct
7 Correct 63 ms 26488 KB Output is correct
8 Correct 21 ms 24192 KB Output is correct
9 Correct 349 ms 41368 KB Output is correct
10 Correct 31 ms 24312 KB Output is correct
11 Correct 22 ms 24064 KB Output is correct
12 Correct 312 ms 41464 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 25 ms 23808 KB Output is correct
2 Correct 21 ms 23808 KB Output is correct
3 Correct 20 ms 23796 KB Output is correct
4 Correct 28 ms 24320 KB Output is correct
5 Correct 20 ms 24020 KB Output is correct
6 Correct 27 ms 24576 KB Output is correct
7 Correct 49 ms 26592 KB Output is correct
8 Correct 23 ms 24256 KB Output is correct
9 Correct 313 ms 41404 KB Output is correct
10 Correct 23 ms 24320 KB Output is correct
11 Correct 25 ms 24124 KB Output is correct
12 Correct 278 ms 41516 KB Output is correct
13 Correct 180 ms 42000 KB Output is correct
14 Correct 263 ms 41964 KB Output is correct
15 Correct 281 ms 41764 KB Output is correct
16 Correct 191 ms 42044 KB Output is correct
17 Correct 280 ms 41848 KB Output is correct
18 Correct 250 ms 36140 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 18 ms 23808 KB Output is correct
2 Correct 19 ms 23808 KB Output is correct
3 Correct 19 ms 23856 KB Output is correct
4 Correct 30 ms 24428 KB Output is correct
5 Correct 25 ms 23936 KB Output is correct
6 Correct 24 ms 24576 KB Output is correct
7 Correct 49 ms 26508 KB Output is correct
8 Correct 22 ms 24192 KB Output is correct
9 Correct 300 ms 41464 KB Output is correct
10 Correct 25 ms 24320 KB Output is correct
11 Correct 22 ms 24192 KB Output is correct
12 Correct 276 ms 41456 KB Output is correct
13 Correct 176 ms 41980 KB Output is correct
14 Correct 263 ms 41912 KB Output is correct
15 Correct 255 ms 41720 KB Output is correct
16 Correct 188 ms 42052 KB Output is correct
17 Correct 283 ms 41920 KB Output is correct
18 Correct 260 ms 36096 KB Output is correct
19 Execution timed out 969 ms 115336 KB Time limit exceeded
20 Halted 0 ms 0 KB -