Submission #412946

#TimeUsernameProblemLanguageResultExecution timeMemory
412946Pichon5Ancient Books (IOI17_books)C++17
12 / 100
1 ms292 KiB
#include<bits/stdc++.h> #define ll long long int #define pb push_back #define vi vector<int> using namespace std; ll minimum_walk(vector<int> p,int s){ ll res=0; int n=p.size(); vi cant(n+2,0); for(int i=0;i<n;i++){ if(p[i]==i)continue; res+=abs(i-p[i]); int mi=min(i,p[i]); int ma=max(i,p[i]); cant[mi]++; cant[ma+1]--; } int sum=0; int acum=0; for(int i=0;i<n;i++){ acum+=cant[i]; if(acum==0){ sum++; }else{ res+=2*sum; sum=0; } } return res; }
#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...