Submission #444493

#TimeUsernameProblemLanguageResultExecution timeMemory
444493fuad27Boxes with souvenirs (IOI15_boxes)C++14
20 / 100
1 ms236 KiB
#include<bits/stdc++.h>
#include "boxes.h"
using namespace std;
typedef long long ll;
long long subtask2(int N, int L, int p[]) {
	long long r = min(p[N-1]*2, min(2*(L-p[0]), L));
	for(int i = 0;i<N;i++) {
		if(i < N-1) r = min(r, 2L*p[i] + 2L*(L - ll(p[i+1])));
		else r = min(r, ll(2)*p[i] + ll(2)*(L - 1));
 
	}
	return r;
}
long long subtask1(int N,int L, int p[]) {
	long long sum = 0;
	for(int i = 0;i<N;i++) {
		sum += min(p[i], L-p[i])*2;
	}
	return sum;
}
long long delivery(int N, int K, int L, int p[]) {
	if(K == 1) {
		sort(p, p+N);
		return subtask1(N,L,p);
	}
	if(K == N) {
		sort(p, p+N);
		return subtask2(N, L, p);
	}
	return 0;
}
/*int main () {
	int p[2] = {1, 3};
	cout<<delivery(2, 2, 4, p);
	return 0;
}*/
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...