#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define fastIO cin.tie(0); ios::sync_with_stdio(false)
ll minimum_walk(vector<int> p, int s) {
ll n = size(p);
vector<bool> vis(n, false);
assert(s == 0);
ll ans = 0;
ll last = 0;
for(int i = 0; i < n; i++) {
if(p[i] != i && !vis[i]) {
ans += i - last;
ll prev = i;
ll next = p[i];
while(next != i) {
vis[next] = true;
ans += abs(next - prev);
prev = p[prev];
next = p[next];
}
ans += abs(next - prev);
last = i;
}
vis[i] = true;
}
ans += last;
return ans;
}
# | 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... |