Submission #31513

# Submission time Handle Problem Language Result Execution time Memory
31513 2017-08-29T07:19:21 Z minkank Senior Postmen (BOI14_postmen) C++14
55 / 100
500 ms 115304 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 23 ms 23860 KB Output is correct
2 Correct 22 ms 23808 KB Output is correct
3 Correct 18 ms 23808 KB Output is correct
4 Correct 25 ms 24320 KB Output is correct
5 Correct 24 ms 24064 KB Output is correct
6 Correct 28 ms 24576 KB Output is correct
7 Correct 41 ms 26496 KB Output is correct
8 Correct 25 ms 24192 KB Output is correct
9 Correct 305 ms 41292 KB Output is correct
10 Correct 23 ms 24320 KB Output is correct
11 Correct 22 ms 24064 KB Output is correct
12 Correct 305 ms 41536 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 17 ms 23808 KB Output is correct
2 Correct 22 ms 23784 KB Output is correct
3 Correct 17 ms 23808 KB Output is correct
4 Correct 23 ms 24320 KB Output is correct
5 Correct 25 ms 23988 KB Output is correct
6 Correct 25 ms 24576 KB Output is correct
7 Correct 56 ms 26360 KB Output is correct
8 Correct 23 ms 24192 KB Output is correct
9 Correct 289 ms 41404 KB Output is correct
10 Correct 24 ms 24320 KB Output is correct
11 Correct 23 ms 24064 KB Output is correct
12 Correct 363 ms 41468 KB Output is correct
13 Correct 191 ms 42080 KB Output is correct
14 Correct 253 ms 41896 KB Output is correct
15 Correct 252 ms 41720 KB Output is correct
16 Correct 191 ms 42080 KB Output is correct
17 Correct 289 ms 41896 KB Output is correct
18 Correct 263 ms 36076 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 20 ms 23764 KB Output is correct
2 Correct 22 ms 23808 KB Output is correct
3 Correct 19 ms 23808 KB Output is correct
4 Correct 23 ms 24320 KB Output is correct
5 Correct 30 ms 23936 KB Output is correct
6 Correct 26 ms 24576 KB Output is correct
7 Correct 45 ms 26500 KB Output is correct
8 Correct 22 ms 24192 KB Output is correct
9 Correct 295 ms 41296 KB Output is correct
10 Correct 23 ms 24320 KB Output is correct
11 Correct 29 ms 24064 KB Output is correct
12 Correct 299 ms 41440 KB Output is correct
13 Correct 187 ms 42072 KB Output is correct
14 Correct 239 ms 41952 KB Output is correct
15 Correct 313 ms 41680 KB Output is correct
16 Correct 191 ms 41976 KB Output is correct
17 Correct 354 ms 41848 KB Output is correct
18 Correct 238 ms 36088 KB Output is correct
19 Execution timed out 943 ms 115304 KB Time limit exceeded
20 Halted 0 ms 0 KB -