Submission #134713

#TimeUsernameProblemLanguageResultExecution timeMemory
134713dvdg6566Ancient Books (IOI17_books)C++14
0 / 100
3 ms504 KiB
#include "books.h" #include<bits/stdc++.h> using namespace std; #define MAXN 1001000 typedef long long ll; ll done[MAXN]; ll N,ans; long long minimum_walk(std::vector<int> p, int s) { assert(s==0); N=p.size(); ll pp = 0; for (int i=0;i<N;++i){ if (done[i])continue; if (p[i]==i)continue; done[i]=1; ll x = p[i]; ans += p[i] - i; ans += i-pp; while (x!=i){ done[x] = 1; ans += abs(p[x] - x); x = p[x]; } pp=i; } return ans+pp; }
#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...