Submission #31569

#TimeUsernameProblemLanguageResultExecution timeMemory
31569aomeHacker (BOI15_hac)C++14
20 / 100
49 ms9988 KiB
/*input
5 
1 2 3 4 5
*/
#include <algorithm>
#include <bitset>
#include <cassert>
#include <cmath>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <ctime>
#include <fstream>
#include <functional>
#include <iomanip>
#include <iostream>
#include <list>
#include <map>
#include <numeric>
#include <queue>
#include <set>
#include <sstream>
#include <stack>
#include <utility>
#include <vector>
using namespace std;
#define sp ' '
#define endl '\n'
#define fi first
#define se second
#define mp make_pair
#define int long long
#define N 500005

int n;
int a[N];
int sum[N];

int get(int l, int r) {
	return sum[r] - sum[l - 1];
}

int ceil(int x, int y) {
	int ret = x / y;
	if (x % y) ret++;
	return ret;
}

signed main() {
	ios_base::sync_with_stdio(false); cin.tie(0);
	cin >> n;
	for (int i = 1; i <= n; i++) cin >> a[i];
	for (int i = 1; i <= n; i++) sum[i] = sum[i - 1] + a[i];
	int ans = 1e18;
	for (int j = 2; j <= n; j++) {
		int left = (ceil(n, 2) - (j - 1));
		if (left < 0) break;
		ans = min(ans, get(1, j - 1) + get(n - left + 1, n));
	}
	cout << ans << endl;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...