제출 #117906

#제출 시각아이디문제언어결과실행 시간메모리
117906PeppaPig고대 책들 (IOI17_books)C++14
0 / 100
2 ms384 KiB
#include "books.h"
#include <bits/stdc++.h>

#define long long long

using namespace std;

const int N = 1e6+5;

int n;
int qs[N];
long ans;

long minimum_walk(vector<int> p, int s) {
	n = p.size();

	for(int i = 0; i < n; i++) {
		if(i < p[i]) ++qs[i], --qs[p[i]];
		if(i > p[i]) ++qs[p[i]], --qs[i];
		ans += abs(i - p[i]);
	}
	for(int i = 1; i < n; i++) qs[i] += qs[i-1];
	int l = 0, r = n - 2;
	while(l < n-1 && !qs[l]) l++;
	while(r >= 0 && !qs[r]) r--;
	for(int i = l; i <= r; i++) if(!qs[i]) ans += 2;

	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...