# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
860867 | 2023-10-14T16:37:42 Z | vjudge1 | Speedrun (RMI21_speedrun) | C++17 | 0 ms | 0 KB |
#include <bits/stdc++.h> #include "speedrun.h" #define pb push_back #define eb emplace_back #define sz(x) (int)x.size() #define all(x) x.begin(), x.end() #define uniq(x) x.erase(unique(all(x)), x.end()) #define rall(x) x.rbegin(), x.rend() //#define int long long using namespace std; using ll = long long; using ull = unsigned long long; using ld = long double; using pii = pair<int, int>; using pll = pair<ll, ll>; const int mod = 1e9 + 7; const int LOG = 20; const int maxn = 1e5 + 5; const double eps = 1e-9; void setIO() { ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0); } vector<bool> vis; int n, hintSize; void dfs(int u, int p) { vis[u] = 1; for(int i=1; i<=n; i++) { if(vis[i]) continue; if(!getHint(i)) continue; goTo(i); dfs(i, u); } } void assignHints(int subtask, int N, int A[], int B[n]) { n = N; setHintLen(n); vis.resize(n+1); for(int i=1; i<n; i++) { setHint(A[i], B[i], 1); setHint(B[i], A[i], 1); } } void speedrun(int subtask, int N, int start) { n = N; hintSize = getLength(); dfs(start, 0); } // int32_t main() { // setIO(); // //code starts here // return 0; // }