Submission #429970

#TimeUsernameProblemLanguageResultExecution timeMemory
429970AmineWeslatiAncient Books (IOI17_books)C++14
0 / 100
3 ms4172 KiB
#include "books.h" #include <bits/stdc++.h> using namespace std; typedef long long ll; typedef vector<int>vi; #define pb push_back #define sz(x) (int)x.size() #define all(x) begin(x),end(x) #define FOR(i,a,b) for(int i=a; i<b; i++) //-------------------------------- const int MX=1e6+5; int N; vi vis(MX,0); int check(){ FOR(i,0,N) if(!vis[i]) return i; return N; } ll minimum_walk(vi p, int s){ N=sz(p); FOR(i,0,N) if(p[i]==i) vis[i]=1; ll ans=0; while(1){ int idx=check(); if(idx==N) break; ans+=abs(s-idx); while(1){ if(vis[idx]) break; vis[idx]=1; ans+=abs(idx-p[idx]); idx=p[idx]; } s=idx; } ans+=abs(s); return ans; } /* 4 0 0 2 3 1 */
#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...