Submission #619512

#TimeUsernameProblemLanguageResultExecution timeMemory
619512SlavicGAncient Books (IOI17_books)C++17
50 / 100
131 ms22732 KiB
#include "books.h" #include "bits/stdc++.h" using namespace std; using ll = long long; ll minimum_walk(vector<int> p, int s) { int n = p.size(); ll ans = 0; vector<ll> paiu(n + 1, 0); for(int i = 0; i < n; ++i) { ans += abs(i - p[i]); int l = min(i, p[i]); int r = max(i, p[i]); if(l != r) { paiu[l]++; paiu[r]--; } } ll bruh = 0; for(int i = 0; i < n - 1; ++i) { if(i) paiu[i] += paiu[i - 1]; if(!paiu[i]) { bruh += 2; } else { ans += bruh; bruh = 0; } } 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...