Submission #775874

#TimeUsernameProblemLanguageResultExecution timeMemory
775874ttamx고대 책들 (IOI17_books)C++14
0 / 100
1 ms340 KiB
#include "books.h" #include<bits/stdc++.h> using namespace std; typedef long long ll; const int N=1e6+5; struct fenwick{ ll t[N]; void add(int i,ll v){ while(i<N)t[i]+=v,i+=i&-i; } ll read(int i){ ll res=0; while(i>0)res+=t[i],i-=i&-i; return res; } }f; long long minimum_walk(vector<int> p, int s){ for(auto &x:p)x++; int n=p.size(); ll ans=0; ll pos=0; ll lz=0; f.add(p[0],1); for(int i=1;i<n;i++){ ll res=f.read(p[i]); if(res!=i){ ans+=(i-pos)+(i-res); if(res<pos)lz=pos; else lz=0; pos=res; } f.add(p[i],1); } ans+=abs(pos-lz)+lz; 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...