# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1042199 | 2024-08-02T15:56:59 Z | raphaelp | Ancient Books (IOI17_books) | C++17 | 0 ms | 0 KB |
#include<bits/stdc++.h> using namespace std; long long minimum_walk(vector<int> p, int s) { int N=p.size(); long long ans=0; for (int i=0; i<N; i++) { ans+=abs(i-p[i]); } vector<int>occ(N); for(int i=0; i<N; i++) { if(occ[i])continue; int x=i; ans+=2; while(!occ[x]) { occ[x]=1; x=p[x]; } return ans-2; }