Submission #288749

#TimeUsernameProblemLanguageResultExecution timeMemory
288749peti1234Ancient Books (IOI17_books)C++17
0 / 100
1 ms384 KiB
#include <bits/stdc++.h> using namespace std; const int c=100002; bool v[c]; long long sum; int n, t[c], mini, maxi; void dfs(int a) { mini=min(mini, a); if (v[t[a]]) dfs(t[a]); } long long minimum_walk(vector<int> p, int s) { n=p.size(); for (int i=0; i<n; i++) t[i]=p[i], sum+=(abs(p[i]-i)); for (int i=0; i<n; i++) if (!v[i]) mini=n, dfs(i), maxi=max(maxi, mini); return sum+2*maxi; }
#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...