Submission #933575

#TimeUsernameProblemLanguageResultExecution timeMemory
933575vjudge1Speedrun (RMI21_speedrun)C++17
Compilation error
0 ms0 KiB
// Problem: B - Speedrun // Contest: Virtual Judge - PES segundo examen de práctica febrero 2024 // URL: https://vjudge.net/contest/612265#problem/B // Memory Limit: 512 MB // Time Limit: 3500 ms // Start: 25-02-2024 15:56:28 #include <bits/stdc++.h> using namespace std; using ll = long long; using ull = unsigned long long; using pll = pair<ll, ll>; #define gcd(x, y) __gcd(x, y) #define mcm(x, y) abs((x) * (y)) / gcd(x, y) #define all(x) begin(x), end(x) #define pb(x) push_back(x) #define endl '\n' #ifdef DEBUG int A[] = {0, 1, 2, 3, 3}, B[] = {0, 2, 3, 4, 5}; int N = 5; int start = 1; ll LEN; bool hints[500][500] = {{}}; ll currNode = start; void setHintLen(int l) { LEN = l; }; void setHint(int i, int j, bool b) { hints[i][j] = b; }; int getLength() { return LEN; }; bool getHint(int j) { return hints[currNode][j]; }; bool goTo(int x) { for (int i = 1; i < N; i++) { ll a = A[i], b = B[i]; if ((a == currNode && b == x) || (a == x && b == currNode)) { currNode = x; cout << currNode << ' '; return true; } } return false; }; #endif void assignHints(int subtask, int N, int A[], int B[]) { if (subtask != 1) return; setHintLen(N); vector<vector<ll>> g(N + 1); for (int i = 1; i < N; i++) { g[A[i]].pb(B[i]); g[B[i]].pb(A[i]); } for (int i = 1; i <= N; i++) for (ll& nei : g[i]) setHint(i, nei, 1); } void speedrun(int substask, int N, int start) { stack<pll> st; st.push({start, -1}); while (st.size()) { pll curr = st.top(); st.pop(); goTo(curr.first); bool added = false; for (int i = 1; i <= N; i++) { bool connected = getHint(i); if (!connected) continue; if (i == curr.second) continue; added = true; st.push({i, curr.first}); } if (!added && curr.first != start) goTo(curr.second); } } #ifdef DEBUG int main() { cout << start << ' '; assignHints(1, N, A, B); speedrun(1, N, start); cout << currNode; } #endif

Compilation message (stderr)

speedrun.cpp: In function 'void assignHints(int, int, int*, int*)':
speedrun.cpp:50:2: error: 'setHintLen' was not declared in this scope
   50 |  setHintLen(N);
      |  ^~~~~~~~~~
speedrun.cpp:59:24: error: 'setHint' was not declared in this scope; did you mean 'setns'?
   59 |   for (ll& nei : g[i]) setHint(i, nei, 1);
      |                        ^~~~~~~
      |                        setns
speedrun.cpp: In function 'void speedrun(int, int, int)':
speedrun.cpp:69:3: error: 'goTo' was not declared in this scope
   69 |   goTo(curr.first);
      |   ^~~~
speedrun.cpp:74:21: error: 'getHint' was not declared in this scope; did you mean 'getline'?
   74 |    bool connected = getHint(i);
      |                     ^~~~~~~
      |                     getline