Submission #1083176

#TimeUsernameProblemLanguageResultExecution timeMemory
1083176Math4Life2020Ancient Books (IOI17_books)C++17
0 / 100
1 ms604 KiB
#include <bits/stdc++.h> using namespace std; using ll = long long; using pii = pair<ll,ll>; ll minimum_walk(vector<int> p, int s) { ll N = p.size(); assert(s==0); ll ans = 0; bool found[N]; for (ll i=0;i<N;i++) { found[i]=0; } ll D = 0; for (ll i=0;i<N;i++) { if (!found[i]) { ll j = i; ll dmin = 1e8; ll L = 0; do { found[j]=1; dmin = min(dmin,j); ans += abs(p[j]-j); j = p[j]; L++; } while (j != i); if (L>1) { D = max(D,dmin); } } } ans += 2*D; 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...