답안 #63324

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
63324 2018-08-01T12:14:38 Z hamzqq9 선물상자 (IOI15_boxes) C++14
100 / 100
497 ms 196100 KB
#include<bits/stdc++.h>
#include "boxes.h"
using namespace std;
#define MAX 10000006
#define ll long long
#define umin(x,y) x=min(x,y)
#define umax(x,y) x=max(x,y)
#define inf 100000000000000000

ll sumL[MAX],sumR[MAX];

ll get_cost(int pos1,int pos2,int L) {

	return min(1ll*L,min(2ll*pos2,2ll*(L-pos1)));

}

long long delivery(int N, int K, int L, int P[]) {

	ll ans=inf;

	int start=0;

	while(P[start]==0) start++;

	for(int i=N-1;i>=start;i--) {

		if(i+K<N) sumR[i]=sumR[i+K]+get_cost(P[i],P[i+K-1],L);
		else sumR[i]=get_cost(P[i],P[N-1],L);

	}

	for(int i=start;i<N;i++) {

		if(i-K>=start) sumL[i]=sumL[i-K]+get_cost(P[i-K+1],P[i],L);
		else sumL[i]=get_cost(P[start],P[i],L);

	}

	for(int i=start;i<=N;i++) {

		umin(ans,sumR[i]+(i-1>=0?sumL[i-1]:0));

	}

	return ans;

}
# 결과 실행 시간 메모리 Grader output
1 Correct 2 ms 256 KB Output is correct
2 Correct 2 ms 376 KB Output is correct
3 Correct 2 ms 376 KB Output is correct
4 Correct 2 ms 376 KB Output is correct
5 Correct 2 ms 376 KB Output is correct
6 Correct 2 ms 376 KB Output is correct
7 Correct 2 ms 376 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 2 ms 376 KB Output is correct
2 Correct 2 ms 348 KB Output is correct
3 Correct 2 ms 376 KB Output is correct
4 Correct 2 ms 376 KB Output is correct
5 Correct 2 ms 296 KB Output is correct
6 Correct 2 ms 376 KB Output is correct
7 Correct 2 ms 376 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 2 ms 256 KB Output is correct
2 Correct 2 ms 292 KB Output is correct
3 Correct 2 ms 376 KB Output is correct
4 Correct 2 ms 376 KB Output is correct
5 Correct 2 ms 376 KB Output is correct
6 Correct 2 ms 376 KB Output is correct
7 Correct 2 ms 256 KB Output is correct
8 Correct 2 ms 256 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 2 ms 256 KB Output is correct
2 Correct 2 ms 376 KB Output is correct
3 Correct 2 ms 376 KB Output is correct
4 Correct 2 ms 376 KB Output is correct
5 Correct 2 ms 376 KB Output is correct
6 Correct 2 ms 376 KB Output is correct
7 Correct 2 ms 376 KB Output is correct
8 Correct 2 ms 376 KB Output is correct
9 Correct 2 ms 348 KB Output is correct
10 Correct 2 ms 376 KB Output is correct
11 Correct 2 ms 376 KB Output is correct
12 Correct 2 ms 296 KB Output is correct
13 Correct 2 ms 376 KB Output is correct
14 Correct 2 ms 376 KB Output is correct
15 Correct 2 ms 256 KB Output is correct
16 Correct 2 ms 292 KB Output is correct
17 Correct 2 ms 376 KB Output is correct
18 Correct 2 ms 376 KB Output is correct
19 Correct 2 ms 376 KB Output is correct
20 Correct 2 ms 376 KB Output is correct
21 Correct 2 ms 256 KB Output is correct
22 Correct 2 ms 256 KB Output is correct
23 Correct 2 ms 348 KB Output is correct
24 Correct 2 ms 376 KB Output is correct
25 Correct 2 ms 376 KB Output is correct
26 Correct 2 ms 376 KB Output is correct
27 Correct 2 ms 376 KB Output is correct
28 Correct 2 ms 292 KB Output is correct
29 Correct 2 ms 376 KB Output is correct
30 Correct 2 ms 376 KB Output is correct
31 Correct 2 ms 376 KB Output is correct
32 Correct 2 ms 376 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 2 ms 256 KB Output is correct
2 Correct 2 ms 376 KB Output is correct
3 Correct 2 ms 376 KB Output is correct
4 Correct 2 ms 376 KB Output is correct
5 Correct 2 ms 376 KB Output is correct
6 Correct 2 ms 376 KB Output is correct
7 Correct 2 ms 376 KB Output is correct
8 Correct 2 ms 376 KB Output is correct
9 Correct 2 ms 348 KB Output is correct
10 Correct 2 ms 376 KB Output is correct
11 Correct 2 ms 376 KB Output is correct
12 Correct 2 ms 296 KB Output is correct
13 Correct 2 ms 376 KB Output is correct
14 Correct 2 ms 376 KB Output is correct
15 Correct 2 ms 256 KB Output is correct
16 Correct 2 ms 292 KB Output is correct
17 Correct 2 ms 376 KB Output is correct
18 Correct 2 ms 376 KB Output is correct
19 Correct 2 ms 376 KB Output is correct
20 Correct 2 ms 376 KB Output is correct
21 Correct 2 ms 256 KB Output is correct
22 Correct 2 ms 256 KB Output is correct
23 Correct 2 ms 348 KB Output is correct
24 Correct 2 ms 376 KB Output is correct
25 Correct 2 ms 376 KB Output is correct
26 Correct 2 ms 376 KB Output is correct
27 Correct 2 ms 376 KB Output is correct
28 Correct 2 ms 292 KB Output is correct
29 Correct 2 ms 376 KB Output is correct
30 Correct 2 ms 376 KB Output is correct
31 Correct 2 ms 376 KB Output is correct
32 Correct 2 ms 376 KB Output is correct
33 Correct 49 ms 19872 KB Output is correct
34 Correct 22 ms 16760 KB Output is correct
35 Correct 25 ms 19072 KB Output is correct
36 Correct 52 ms 19860 KB Output is correct
37 Correct 52 ms 19912 KB Output is correct
38 Correct 51 ms 19848 KB Output is correct
39 Correct 44 ms 19828 KB Output is correct
40 Correct 31 ms 19832 KB Output is correct
41 Correct 49 ms 19952 KB Output is correct
42 Correct 34 ms 19832 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 2 ms 256 KB Output is correct
2 Correct 2 ms 376 KB Output is correct
3 Correct 2 ms 376 KB Output is correct
4 Correct 2 ms 376 KB Output is correct
5 Correct 2 ms 376 KB Output is correct
6 Correct 2 ms 376 KB Output is correct
7 Correct 2 ms 376 KB Output is correct
8 Correct 2 ms 376 KB Output is correct
9 Correct 2 ms 348 KB Output is correct
10 Correct 2 ms 376 KB Output is correct
11 Correct 2 ms 376 KB Output is correct
12 Correct 2 ms 296 KB Output is correct
13 Correct 2 ms 376 KB Output is correct
14 Correct 2 ms 376 KB Output is correct
15 Correct 2 ms 256 KB Output is correct
16 Correct 2 ms 292 KB Output is correct
17 Correct 2 ms 376 KB Output is correct
18 Correct 2 ms 376 KB Output is correct
19 Correct 2 ms 376 KB Output is correct
20 Correct 2 ms 376 KB Output is correct
21 Correct 2 ms 256 KB Output is correct
22 Correct 2 ms 256 KB Output is correct
23 Correct 2 ms 348 KB Output is correct
24 Correct 2 ms 376 KB Output is correct
25 Correct 2 ms 376 KB Output is correct
26 Correct 2 ms 376 KB Output is correct
27 Correct 2 ms 376 KB Output is correct
28 Correct 2 ms 292 KB Output is correct
29 Correct 2 ms 376 KB Output is correct
30 Correct 2 ms 376 KB Output is correct
31 Correct 2 ms 376 KB Output is correct
32 Correct 2 ms 376 KB Output is correct
33 Correct 49 ms 19872 KB Output is correct
34 Correct 22 ms 16760 KB Output is correct
35 Correct 25 ms 19072 KB Output is correct
36 Correct 52 ms 19860 KB Output is correct
37 Correct 52 ms 19912 KB Output is correct
38 Correct 51 ms 19848 KB Output is correct
39 Correct 44 ms 19828 KB Output is correct
40 Correct 31 ms 19832 KB Output is correct
41 Correct 49 ms 19952 KB Output is correct
42 Correct 34 ms 19832 KB Output is correct
43 Correct 487 ms 195956 KB Output is correct
44 Correct 228 ms 164780 KB Output is correct
45 Correct 275 ms 192928 KB Output is correct
46 Correct 489 ms 195992 KB Output is correct
47 Correct 493 ms 196048 KB Output is correct
48 Correct 497 ms 196012 KB Output is correct
49 Correct 447 ms 196076 KB Output is correct
50 Correct 304 ms 195760 KB Output is correct
51 Correct 495 ms 196100 KB Output is correct
52 Correct 295 ms 195964 KB Output is correct