Submission #877321

#TimeUsernameProblemLanguageResultExecution timeMemory
877321MilosMilutinovicAncient Books (IOI17_books)C++14
0 / 100
1 ms348 KiB
#include "books.h" #include <bits/stdc++.h> using namespace std; long long minimum_walk(vector<int> p, int s) { int n = (int) p.size(); vector<int> all; long long cost = 0; vector<bool> was(n); for (int i = 0; i < n; i++) { if (was[i]) { continue; } int x = i; vector<int> vec; while (!was[x]) { was[x] = true; vec.push_back(x); cost += abs(p[x] - x); x = p[x]; } sort(vec.begin(), vec.end()); if (vec.size() > 1) { all.push_back(vec[0]); } } if (!all.empty()) { cost += *max_element(all.begin(), all.end()) * 2; } return cost; }
#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...