제출 #73620

#제출 시각아이디문제언어결과실행 시간메모리
73620MKopchev고대 책들 (IOI17_books)C++14
0 / 100
3 ms488 KiB
#include<bits/stdc++.h>
using namespace std;
const int nmax=1e6+42;
int where[nmax];
bool been[nmax];
long long minimum_walk(vector<int> p, int s)
{
    int n=p.size();
    for(int i=0;i<n;i++)
        where[i]=p[i];
    long long ans=0;
    int last=0;
    for(int i=0;i<n;i++)
        if(been[i]==0)
        {
            ans=ans+i-last;
            last=i;
            int now=i;
            while(been[now]==0)
            {
                ans=ans+abs(now-where[now]);
                been[now]=1;
                now=where[now];
            }
        }
    return ans;
}
#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...