# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
1042189 | 2024-08-02T15:51:53 Z | raphaelp | 고대 책들 (IOI17_books) | C++17 | 0 ms | 0 KB |
#include<bits/stdc++.h> using namespace std; int64 minimum_walk(int[] p, int S) { int N=p.size(); int64 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; }