Submission #610241

#TimeUsernameProblemLanguageResultExecution timeMemory
610241PiejanVDCAncient Books (IOI17_books)C++17
12 / 100
1 ms300 KiB
#include "books.h" #include <bits/stdc++.h> using namespace std; long long minimum_walk(vector<int>p, int s) { long long last = 0; int n = p.size(); long long ans = 0; vector<bool>vis(n,0); int mx = -1; for(int i = 0 ; i < n ; i++) if(!vis[i]) { vis[i] = 1; if(i > mx && p[i] != i) last = i; int pos = i; do { vis[pos] = 1; mx = max(mx, pos); int nxt = p[pos]; ans += abs(nxt-pos); pos = nxt; } while(pos != i); } return ans+2*last; }
#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...