Submission #205570

#TimeUsernameProblemLanguageResultExecution timeMemory
205570ArshiaDadrasAmusement Park (JOI17_amusement_park)C++14
0 / 100
40 ms4376 KiB
/* In the name of Allah */ #include<bits/stdc++.h> #include<Joi.h> using namespace std; const int N = 1e4 + 5; vector<int> adj[N], V; bool mark[N]; void dfs(int u) { mark[u] = true, V.push_back(u); for (auto v: adj[u]) if (!mark[v]) dfs(v); } void Joi(int n, int m, int a[], int b[], long long x, int t) { V.clear(); for (int u = 0; u < n; u++) adj[u].clear(); memset(mark, false, sizeof mark); for (int i = 0; i < m; i++) { adj[a[i]].push_back(b[i]); adj[b[i]].push_back(a[i]); } dfs(0); for (int i = 0; i < n; i++) MessageBoard(V[i], x >> i % 60 & 1); }
/* In the name of Allah */ #include<bits/stdc++.h> #include<Ioi.h> using namespace std; const int N = 1e4 + 5; vector<int> adj[N], V, path; long long answer; int root, id; bool mark[N]; void build(int u) { mark[u] = true, V.push_back(u); for (auto v: adj[u]) if (!mark[v]) build(v); } bool go(int u) { mark[u] = true; if (u == root) return true; for (auto v: adj[u]) if (!mark[v] && go(v)) { path.push_back(v); return true; } return false; } void dfs(int u, long long b) { mark[u] = true; answer |= b << id++; for (auto v: adj[u]) if (!mark[v] && id < 60) { dfs(v, Move(v)); if (id < 60) Move(u); } } long long Ioi(int n, int m, int a[], int b[], int p, int v, int t) { answer = id = 0; V.clear(), path.clear(); for (int u = 0; u < n; u++) adj[u].clear(); memset(mark, false, sizeof mark); for (int i = 0; i < m; i++) { adj[a[i]].push_back(b[i]); adj[b[i]].push_back(a[i]); } build(0), memset(mark, false, sizeof mark); for (int i = 0; i < n; i++) if (V[i] == p) root = V[i - i % 60]; go(p), reverse(path.begin(), path.end()); for (auto u: path) v = Move(p = u); memset(mark, false, sizeof mark), dfs(p, v); return answer; }
#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...