제출 #57147

#제출 시각아이디문제언어결과실행 시간메모리
57147dennisstar전선 연결 (IOI17_wiring)C++11
13 / 100
52 ms14356 KiB
//#include "wiring.h"
#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
LL min_total_length(vector<int> a, vector<int> b)
{
	int n=(int)a.size(), m=(int)b.size();
	int i, j;
	LL sum=0;
	if (n>m) {
		for (i=j=0; i<m-1; i++) {
			sum+=(LL)abs(a[j]-b[i]);
			j++;
			for (; j<n-(m-i-1)&&abs(a[j]-b[i])<abs(a[j]-b[i+1]); j++) sum+=(LL)abs(a[j]-b[i]);
		}
		for (; j<n; j++) sum+=(LL)abs(a[j]-b[m-1]);
	}
	else {
		for (i=j=0; i<n-1; i++) {
			sum+=(LL)abs(a[i]-b[j]);
			j++;
			for (; j<m-(n-i-1)&&abs(a[i]-b[j])<abs(a[i+1]-b[j]); j++) sum+=(LL)abs(a[i]-b[j]);
		}
		for (; j<m; j++) sum+=(LL)abs(a[n-1]-b[j]);
	}
	return sum;
}
#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...