Submission #51506

#TimeUsernameProblemLanguageResultExecution timeMemory
51506aomeAncient Books (IOI17_books)C++17
0 / 100
3 ms752 KiB
#include <bits/stdc++.h> #include "books.h" using namespace std; const int N = 1000005; bool visit[N]; long long minimum_walk(vector<int> p, int s) { assert(s == 0); int n = p.size(); int cur = 0; long long sum = 0; for (int i = 0; i < n; ++i) sum += abs(p[i] - i); while (1) { queue<int> qu; visit[cur] = 1, qu.push(cur); while (qu.size()) { int u = qu.front(); qu.pop(); while (cur < p[u]) { cur++, visit[cur] = 1, qu.push(cur); } } if (cur == n - 1) break; sum += 2, cur++; } return sum; }
#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...