Submission #31521

# Submission time Handle Problem Language Result Execution time Memory
31521 2017-08-29T07:25:15 Z minkank Senior Postmen (BOI14_postmen) C++14
55 / 100
500 ms 115288 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]) {
		while(st.top() != u) cout << st.top() << ' ', check[st.top()] = false, st.pop(); st.pop();
		cout << u << 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:18: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:18: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 23800 KB Output is correct
2 Correct 19 ms 23808 KB Output is correct
3 Correct 23 ms 23808 KB Output is correct
4 Correct 33 ms 24320 KB Output is correct
5 Correct 25 ms 24040 KB Output is correct
6 Correct 25 ms 24576 KB Output is correct
7 Correct 48 ms 26364 KB Output is correct
8 Correct 22 ms 24192 KB Output is correct
9 Correct 340 ms 41372 KB Output is correct
10 Correct 24 ms 24296 KB Output is correct
11 Correct 23 ms 24064 KB Output is correct
12 Correct 328 ms 41436 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 20 ms 23760 KB Output is correct
2 Correct 25 ms 23808 KB Output is correct
3 Correct 18 ms 23808 KB Output is correct
4 Correct 27 ms 24320 KB Output is correct
5 Correct 22 ms 24040 KB Output is correct
6 Correct 32 ms 24524 KB Output is correct
7 Correct 52 ms 26552 KB Output is correct
8 Correct 23 ms 24176 KB Output is correct
9 Correct 304 ms 41336 KB Output is correct
10 Correct 29 ms 24368 KB Output is correct
11 Correct 25 ms 24064 KB Output is correct
12 Correct 310 ms 41464 KB Output is correct
13 Correct 195 ms 41996 KB Output is correct
14 Correct 252 ms 41928 KB Output is correct
15 Correct 292 ms 41804 KB Output is correct
16 Correct 189 ms 41976 KB Output is correct
17 Correct 294 ms 41860 KB Output is correct
18 Correct 301 ms 36088 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 21 ms 23808 KB Output is correct
2 Correct 23 ms 23792 KB Output is correct
3 Correct 22 ms 23864 KB Output is correct
4 Correct 32 ms 24320 KB Output is correct
5 Correct 24 ms 23936 KB Output is correct
6 Correct 24 ms 24576 KB Output is correct
7 Correct 51 ms 26360 KB Output is correct
8 Correct 23 ms 24192 KB Output is correct
9 Correct 298 ms 41372 KB Output is correct
10 Correct 30 ms 24320 KB Output is correct
11 Correct 22 ms 24192 KB Output is correct
12 Correct 306 ms 41500 KB Output is correct
13 Correct 184 ms 42072 KB Output is correct
14 Correct 265 ms 42012 KB Output is correct
15 Correct 285 ms 41748 KB Output is correct
16 Correct 190 ms 42040 KB Output is correct
17 Correct 306 ms 41804 KB Output is correct
18 Correct 251 ms 36012 KB Output is correct
19 Execution timed out 982 ms 115288 KB Time limit exceeded
20 Halted 0 ms 0 KB -