Submission #503195

#TimeUsernameProblemLanguageResultExecution timeMemory
503195sidonAirline Route Map (JOI18_airline)C++17
100 / 100
815 ms25536 KiB
#include "Alicelib.h" #include <bits/stdc++.h> using namespace std; void Alice(int N, int M, int *A, int *B) { vector<pair<int, int>> G; for(int i = 1; i <= N; ++i) for(int j = 0; j < 10; ++j) if((i >> j) & 1) G.emplace_back(N+j, i-1); for(int j = 0; j < N+10; ++j) G.emplace_back(0+j, N+11); for(int j = 0; j < 0+10; ++j) G.emplace_back(N+j, N+10); for(int j = 1; j < 0+10; ++j) G.emplace_back(N+j, N+j-1); InitG(N + 12, size(G) + M); for(int i = 0; i < M; ++i) MakeG(i, A[i], B[i]); for(auto &[u, v] : G) MakeG(M++, u, v); }
#include "Boblib.h" #include <bits/stdc++.h> using namespace std; void Bob(int N, int M, int *A, int *B){ int org = 0, d[N] = {}, p[N] = {}, rt, f = -1; vector<int> G[N]; for(int i = 0; i < M; ++i) G[A[i]].push_back(B[i]), G[B[i]].push_back(A[i]); for(int i = 0; i < N; ++i) if(size(G[i]) > size(G[org])) org = i; for(int u = 0; u < N; ++u) { bool ok = u == org; for(int v : G[org]) if(v == u) ok = 1; if(!ok) rt = u; } for(int u : G[rt]) ++d[u]; for(int u : G[rt]) for(int v : G[u]) if(d[v]) ++d[u]; for(int u : G[rt]) { p[u] = p[rt] = p[org] = -2e5; if(d[u] < 3 && ((int)size(G[u]) - 3) == (N-11)/2) d[f = u] = 0; } for(int j = 0, nxt; j < 10; ++j, d[f] = 0, f = nxt) for(int v : G[f]) d[v] ? nxt = v : p[v] += 1<<j; vector<pair<int, int>> E; for(int i = 0; i < M; ++i) if(min(p[A[i]], p[B[i]]) >= 0) E.emplace_back(p[A[i]]-1, p[B[i]]-1); InitMap(N-12, size(E)); for(auto &[u, v] : E) MakeMap(u, v); }

Compilation message (stderr)

Bob.cpp: In function 'void Bob(int, int, int*, int*)':
Bob.cpp:33:17: warning: 'nxt' may be used uninitialized in this function [-Wmaybe-uninitialized]
   33 |  for(int j = 0, nxt; j < 10; ++j, d[f] = 0, f = nxt)
      |                 ^~~
Bob.cpp:7:37: warning: 'rt' may be used uninitialized in this function [-Wmaybe-uninitialized]
    7 |  int org = 0, d[N] = {}, p[N] = {}, rt, f = -1;
      |                                     ^~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...