Submission #73629

#TimeUsernameProblemLanguageResultExecution timeMemory
73629MKopchev고대 책들 (IOI17_books)C++14
0 / 100
3 ms676 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&&i!=where[i]) { 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+last; } /* int main() { //cout<<minimum_walk({0, 2, 3, 1}, 0)<<endl; //cout<<minimum_walk({1,0,3,2}, 0)<<endl; return 0; } */
#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...