# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
208718 | 2020-03-12T05:17:25 Z | E869120 | Senior Postmen (BOI14_postmen) | C++14 | 500 ms | 36720 KB |
#include <iostream> #include <vector> #include <set> using namespace std; #pragma warning (disable: 4996) int N, M, A[1 << 19], B[1 << 19]; set<int> X[1 << 19]; int idx[1 << 19]; int main() { scanf("%d%d", &N, &M); for (int i = 1; i <= M; i++) { scanf("%d%d", &A[i], &B[i]); X[A[i]].insert(B[i]); X[B[i]].insert(A[i]); } int num = M, cnt = 1; vector<vector<int>> ans; for (int i = 1; i <= N; i++) idx[i] = -1; while (num > 0) { while (X[cnt].empty()) { cnt++; } int cx = cnt, pre = -1; vector<int> v; for (int t = 0; t <= N; t++) { v.push_back(cx); idx[cx] = t; auto itr = X[cx].begin(); if ((*itr) == pre) itr++; int nex = (*itr); if (idx[nex] != -1) { vector<int> v2; for (int i = idx[nex]; i < v.size(); i++) v2.push_back(v[i]); for (int i : v) idx[i] = -1; v = v2; break; } else { pre = cx; cx = nex; } } ans.push_back(v); for (int i = 0; i < v.size(); i++) { int s1 = v[i], s2 = v[(i + 1) % v.size()]; X[s1].erase(s2); X[s2].erase(s1); num--; } } for (int i = 0; i < ans.size(); i++) { for (int j = 0; j < ans[i].size(); j++) { if (j) printf(" "); printf("%d", ans[i][j]); } printf("\n"); } return 0; }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 37 ms | 24928 KB | Output is correct |
2 | Correct | 23 ms | 24960 KB | Output is correct |
3 | Correct | 22 ms | 24960 KB | Output is correct |
4 | Correct | 25 ms | 25344 KB | Output is correct |
5 | Correct | 20 ms | 25088 KB | Output is correct |
6 | Correct | 23 ms | 25472 KB | Output is correct |
7 | Correct | 44 ms | 26720 KB | Output is correct |
8 | Correct | 20 ms | 25192 KB | Output is correct |
9 | Correct | 202 ms | 36212 KB | Output is correct |
10 | Correct | 21 ms | 25344 KB | Output is correct |
11 | Correct | 20 ms | 25344 KB | Output is correct |
12 | Correct | 211 ms | 36332 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 21 ms | 24960 KB | Output is correct |
2 | Correct | 18 ms | 24960 KB | Output is correct |
3 | Correct | 19 ms | 24960 KB | Output is correct |
4 | Correct | 21 ms | 25344 KB | Output is correct |
5 | Correct | 21 ms | 25088 KB | Output is correct |
6 | Correct | 22 ms | 25472 KB | Output is correct |
7 | Correct | 41 ms | 26744 KB | Output is correct |
8 | Correct | 25 ms | 25216 KB | Output is correct |
9 | Correct | 270 ms | 36280 KB | Output is correct |
10 | Correct | 20 ms | 25344 KB | Output is correct |
11 | Correct | 28 ms | 25344 KB | Output is correct |
12 | Correct | 223 ms | 36348 KB | Output is correct |
13 | Correct | 144 ms | 36720 KB | Output is correct |
14 | Execution timed out | 1097 ms | 36028 KB | Time limit exceeded |
15 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 18 ms | 24960 KB | Output is correct |
2 | Correct | 19 ms | 25000 KB | Output is correct |
3 | Correct | 20 ms | 24960 KB | Output is correct |
4 | Correct | 22 ms | 25344 KB | Output is correct |
5 | Correct | 20 ms | 25088 KB | Output is correct |
6 | Correct | 27 ms | 25520 KB | Output is correct |
7 | Correct | 39 ms | 26752 KB | Output is correct |
8 | Correct | 20 ms | 25216 KB | Output is correct |
9 | Correct | 208 ms | 36244 KB | Output is correct |
10 | Correct | 23 ms | 25344 KB | Output is correct |
11 | Correct | 24 ms | 25344 KB | Output is correct |
12 | Correct | 216 ms | 36384 KB | Output is correct |
13 | Correct | 149 ms | 36696 KB | Output is correct |
14 | Execution timed out | 1094 ms | 35948 KB | Time limit exceeded |
15 | Halted | 0 ms | 0 KB | - |