107832024-04-12 15:49:58111Metróutasokcpp17Accepted 100/10068ms7604 KiB
#include<bits/stdc++.h>
using namespace std;

#define int long long

signed main(){
	ios::sync_with_stdio(false);
	cin.tie(nullptr);
#ifdef CB
	freopen("be1.txt","r",stdin);
//	freopen("ki.txt","w",stdout);
#endif
	int N;
	cin>>N;
	vector<int>v(N+1),p(N+1);
	for(int i=1;i<=N;i++){
		cin>>v[i];
		p[i]=p[i-1]+v[i];
	}
	int l=v[1],h=p[N];
	while(l<h){
		int m=(l+h)/2;
		int ok=1;
		int mn=0;
		for(int i=1;i<=N;i++){
			mn=max(mn,(v[i]+1)/2);
		}
		int x=0;
		int a=0;
		for(int i=1;i<=N;i++){
			int y=min(x,m-(m%2!=x%2));
			a=min(abs(a-v[i]),abs(y-v[i]));
			x+=v[i];
			if(y>=v[i]){
				a=min(a,x&1);
			}
			mn=max(mn,a);
		}
		x=0;
		a=0;
		for(int i=N;i>=1;i--){
			int y=min(x,m-(m%2!=x%2));
			a=min(abs(a-v[i]),abs(y-v[i]));
			x+=v[i];
			if(y>=v[i]){
				a=min(a,x&1);
			}
			mn=max(mn,a);
		}
		ok&=mn<=m;
		if(ok){
			h=m;
		}
		else{
			l=m+1;
		}
	}
	cout<<h<<'\n';
	l=v[1],h=p[N];
	while(l<h){
		int m=(l+h)/2;
		int ok=0;
		for(int i=1;i<=N;i++){
			if(p[i]>=m&&p[N]-p[i]>=m){
				ok=1;
			}
		}
		if(ok){
			l=m+1;
		}
		else{
			h=m;
		}
	}
	cout<<l-1<<'\n';
	return 0;
}
SubtaskSumTestVerdictTimeMemory
subtask10/0
1Accepted3ms1700 KiB
2Accepted67ms4888 KiB
subtask212/12
3Accepted3ms2076 KiB
4Accepted3ms2284 KiB
5Accepted3ms2504 KiB
6Accepted3ms2708 KiB
7Accepted3ms2928 KiB
8Accepted3ms3136 KiB
9Accepted3ms3224 KiB
10Accepted2ms3364 KiB
11Accepted3ms3456 KiB
12Accepted3ms3684 KiB
13Accepted3ms3732 KiB
14Accepted3ms3728 KiB
15Accepted2ms3840 KiB
16Accepted3ms3824 KiB
subtask312/12
17Accepted3ms2076 KiB
18Accepted3ms2284 KiB
19Accepted3ms2504 KiB
20Accepted3ms2708 KiB
21Accepted3ms2928 KiB
22Accepted3ms3136 KiB
23Accepted3ms3224 KiB
24Accepted2ms3364 KiB
25Accepted3ms3456 KiB
26Accepted3ms3684 KiB
27Accepted3ms3728 KiB
28Accepted3ms3628 KiB
29Accepted2ms3624 KiB
30Accepted3ms3620 KiB
31Accepted3ms3748 KiB
32Accepted3ms3828 KiB
33Accepted3ms3836 KiB
34Accepted3ms3988 KiB
35Accepted3ms4056 KiB
36Accepted3ms3836 KiB
37Accepted3ms3732 KiB
38Accepted3ms3728 KiB
39Accepted2ms3836 KiB
40Accepted3ms3936 KiB
41Accepted3ms4164 KiB
42Accepted3ms4272 KiB
43Accepted2ms3840 KiB
44Accepted3ms3824 KiB
45Accepted3ms4164 KiB
46Accepted3ms4292 KiB
47Accepted3ms4280 KiB
48Accepted2ms4384 KiB
49Accepted3ms4280 KiB
subtask416/16
50Accepted3ms2076 KiB
51Accepted3ms2284 KiB
52Accepted3ms2504 KiB
53Accepted3ms2708 KiB
54Accepted3ms2928 KiB
55Accepted3ms3136 KiB
56Accepted3ms3224 KiB
57Accepted2ms3364 KiB
58Accepted3ms3456 KiB
59Accepted3ms3684 KiB
60Accepted3ms3728 KiB
61Accepted3ms3628 KiB
62Accepted2ms3624 KiB
63Accepted3ms3620 KiB
64Accepted3ms3748 KiB
65Accepted3ms3828 KiB
66Accepted3ms3836 KiB
67Accepted3ms3988 KiB
68Accepted3ms4056 KiB
69Accepted3ms3836 KiB
70Accepted3ms4264 KiB
71Accepted3ms4264 KiB
72Accepted3ms4508 KiB
73Accepted3ms4260 KiB
74Accepted3ms4364 KiB
75Accepted2ms4268 KiB
76Accepted3ms4260 KiB
77Accepted3ms4264 KiB
78Accepted3ms4264 KiB
79Accepted3ms4268 KiB
80Accepted3ms3732 KiB
81Accepted3ms3728 KiB
82Accepted2ms3836 KiB
83Accepted3ms3936 KiB
84Accepted3ms4164 KiB
85Accepted3ms4272 KiB
86Accepted2ms3840 KiB
87Accepted3ms3824 KiB
88Accepted3ms4164 KiB
89Accepted3ms4292 KiB
90Accepted3ms4280 KiB
91Accepted2ms4384 KiB
92Accepted3ms4280 KiB
subtask560/60
93Accepted3ms2076 KiB
94Accepted67ms7160 KiB
95Accepted3ms2284 KiB
96Accepted3ms2504 KiB
97Accepted3ms2708 KiB
98Accepted3ms2928 KiB
99Accepted3ms3136 KiB
100Accepted3ms3224 KiB
101Accepted2ms3364 KiB
102Accepted3ms3456 KiB
103Accepted3ms3684 KiB
104Accepted3ms3728 KiB
105Accepted3ms3628 KiB
106Accepted2ms3624 KiB
107Accepted3ms3620 KiB
108Accepted3ms3748 KiB
109Accepted3ms3828 KiB
110Accepted3ms3836 KiB
111Accepted3ms3988 KiB
112Accepted3ms4056 KiB
113Accepted3ms3836 KiB
114Accepted3ms4264 KiB
115Accepted3ms4264 KiB
116Accepted3ms4508 KiB
117Accepted3ms4260 KiB
118Accepted3ms4364 KiB
119Accepted2ms4268 KiB
120Accepted3ms4260 KiB
121Accepted3ms4264 KiB
122Accepted3ms4264 KiB
123Accepted3ms4268 KiB
124Accepted68ms7164 KiB
125Accepted68ms7208 KiB
126Accepted68ms7160 KiB
127Accepted67ms7216 KiB
128Accepted67ms7212 KiB
129Accepted67ms7160 KiB
130Accepted67ms7164 KiB
131Accepted65ms7160 KiB
132Accepted65ms7308 KiB
133Accepted3ms3732 KiB
134Accepted3ms3728 KiB
135Accepted2ms3836 KiB
136Accepted3ms3936 KiB
137Accepted3ms4164 KiB
138Accepted3ms4272 KiB
139Accepted2ms3840 KiB
140Accepted3ms3824 KiB
141Accepted3ms4164 KiB
142Accepted3ms4292 KiB
143Accepted3ms4280 KiB
144Accepted45ms7032 KiB
145Accepted41ms6644 KiB
146Accepted46ms7196 KiB
147Accepted28ms5992 KiB
148Accepted43ms7388 KiB
149Accepted43ms7604 KiB
150Accepted2ms4384 KiB
151Accepted3ms4280 KiB
152Accepted41ms7444 KiB