제출 #366637

#제출 시각아이디문제언어결과실행 시간메모리
366637Mamnoon_SiamAmusement Park (JOI17_amusement_park)C++17
10 / 100
40 ms8980 KiB
#include "Joi.h" #include <bits/stdc++.h> using namespace std; /* sorry, this is the bare minimum :'( */ using ll = long long; using ii = pair<int, int>; using vi = vector<int>; #define all(v) begin(v), end(v) #define sz(v) (int)(v).size() #define fi first #define se second const int N = 1e5 + 5; namespace { int vis[N]; int cnt = 0; int rnk[N]; vi g[N]; void dfs(int u) { vis[u] = 1; rnk[u] = cnt++; for(int v : g[u]) if(!vis[v]) { dfs(v); } } } void Joi(int n, int m, int A[], int B[], long long X, int T) { for(int i = 0; i < m; ++i) { g[A[i]].emplace_back(B[i]); g[B[i]].emplace_back(A[i]); } dfs(0); for(int i = 0; i < n; ++i) { MessageBoard(i, X >> (rnk[i] % 60) & 1); } }
#include "Ioi.h" #include <bits/stdc++.h> using namespace std; /* sorry, this is the bare minimum :'( */ using ll = long long; using ii = pair<int, int>; using vi = vector<int>; #define all(v) begin(v), end(v) #define sz(v) (int)(v).size() #define fi first #define se second const int N = 1e5 + 5; namespace { vi g[N]; int vis[N], rnk[N]; int cnt = 0; vi tour; void dfs(int u) { vis[u] = 1; rnk[u] = cnt++; tour.emplace_back(u); for(int v : g[u]) if(!vis[v]) { dfs(v); tour.emplace_back(u); } } } long long Ioi(int n, int m, int A[], int B[], int P, int V, int T) { for(int i = 0; i < m; ++i) { g[A[i]].emplace_back(B[i]); g[B[i]].emplace_back(A[i]); } dfs(0); tour.pop_back(); ll ret = ll(V) << (rnk[P] % 60); int st = int(find(all(tour), P) - tour.begin()); for(int _ = 0, i = st+1; _ < 120; i = (i+1) % sz(tour), ++_) { ret |= ll(Move(tour[i])) << (rnk[tour[i]] % 60); } return ret; }
#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...