# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
105230 | puyu_liao | Ancient Books (IOI17_books) | C++14 | 3 ms | 384 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include<bits/stdc++.h>
#include<stdio.h>
using namespace std;
#define IOS {cin.tie(0);ios_base::sync_with_stdio(false);}
#include"books.h"
typedef long long lll;
#define N 100005
bitset<N> vis;
lll minimum_walk(vector<int> p,int s){
vis.reset();
int ll = s,rr = s,gl,gr;
lll ans = 0;
for(int i=0;i<p.size();i++) if(!vis[i]){
gl = p.size()+1, gr = -1;
vis[i] = 1;
int t = i;
while(!vis[p[t]]){
gl = min(gl,t); gr = max(gr,t);
vis[p[t]] = 1;
ans += abs(p[t] - t);
t = p[t];
gl = min(gl,t); gr = max(gr,t);
}
if(gl <= gr && gr < s) ll = min(ll,gr);
if(gl <= gr && gl > s) rr = max(rr,gl);
ans += abs(p[t] - t);
}
return ans + rr+rr-ll-ll;
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |