제출 #783241

#제출 시각아이디문제언어결과실행 시간메모리
783241shezittBoxes with souvenirs (IOI15_boxes)C++17
20 / 100
1 ms304 KiB
#include <bits/stdc++.h>
#include <boxes.h>
using namespace std;

using ll = long long;

long long delivery(int N, int K, int L, int p[]){
	// SUBTASK 1
	if(K == 1){
		ll ans = 0;
		for(int i=0; i<N; ++i){
			ans += min(p[i], L - p[i]) * 2;
		}
		return ans;	
	}
	
	// SUBTASK 2
	if(K == N){
		ll ans = 2e9+5;
		sort(p, p+N);
		
		// opcion 1
		ans = p[N-1] * 2;
		
		// opcion 2
		ans = min(ans, (L - p[0])*2ll);
		
		// opcion 3
		ans = min(ans, 1ll*L);
		
		// opcion 4
		if(N > 1){
			if(N == 2){
				ans = min(ans, 2ll*p[0] + 2*(L - p[1]));
				return ans;
			}
			for(int i=0; i+1<N; ++i){
				ll x = p[i];
				ll y = p[i+1];
				ans = min(ans, 2*x + 2*(L - y));
			}
		}
		
		return ans;
		
	}
	
	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...