Submission #946977

#TimeUsernameProblemLanguageResultExecution timeMemory
946977pragmatistAmusement Park (JOI17_amusement_park)C++17
10 / 100
17 ms4904 KiB
#include "Joi.h" #include<bits/stdc++.h> using namespace std; bool used1[100005]; vector<int> g1[10005]; int timer1, tin1[10005], tout1[10005]; void dfs1(int v, int pr) { used1[v] = 1; tin1[v] = ++timer1; for(auto to : g1[v]) { if(to == pr) { continue; } if(!used1[to]) { dfs1(to, v); } } tout1[v] = timer1; } void Joi(int _N, int _M, int _A[], int _B[], long long _X, int _T) { int n = _N; int m = _M; for(int i = 0; i < m; ++i) { int u = _A[i]; int v = _B[i]; g1[u].push_back(v); g1[v].push_back(u); } long long x = _X; dfs1(0, -1); for(int i = 0; i < n; ++i) { int j = (tin1[i]%60); MessageBoard(i, (x >> j & 1)); } }
#include "Ioi.h" #include<bits/stdc++.h> using namespace std; int n, m, start; int a[10005]; bool used2[100005]; bool used3[70]; vector<int> g2[10005]; int timer2, tin2[10005], tout2[10005]; void dfs2(int v, int pr) { used2[v] = 1; tin2[v] = ++timer2; for(auto to : g2[v]) { if(to == pr) { continue; } if(!used2[to]) { dfs2(to, v); } } tout2[v] = timer2; } int last = -1; void dfs3(int v, int pr) { last = v; used2[tin2[v]%60] = 1; for(auto to : g2[v]) { if(!used2[tin2[to]%60] && tin2[to]<tin2[v]) { a[tin2[to]%60] = Move(to); dfs3(to, v); } } } bool used4[70]; void dfs4(int v, int pr) { used4[tin2[v]%60] = 1; for(auto to : g2[v]) { if(!used4[tin2[to]%60]) { a[tin2[to]%60] = Move(to); dfs4(to, v); Move(v); } } } long long Ioi(int _N, int _M, int _A[], int _B[], int _P, int _V, int _T) { n = _N; m = _M; start = _P; for(int i = 0; i < m; ++i) { int u = _A[i]; int v = _B[i]; g2[u].push_back(v); g2[v].push_back(u); } dfs2(0, -1); a[tin2[start]%60] = _V; memset(used2, 0, sizeof(used2)); used2[tin2[start]%60] = 1; dfs3(start, -1); dfs4(last, -1); long long ans = 0; for(int i = 0; i < 60; ++i) { if(a[i]) { ans |= (1ll << i); } } return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...