이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include <iostream>
#include <set>
using namespace std;
/*
For any starting position, the operator can force the hacker into any contiguous ceil(n/2) positions
containing that particular position.
*/
int main()
{
int n;
cin >> n;
int v[n];
int i, j;
for(i = 0; i < n; i++) cin >> v[i];
int a_size = n - (n/2);
int w[n];
w[0] = 0;
for(j = 0; j < a_size; j++) w[0] += v[j];
j--;
for(i = 1; i < n; i++)
{
w[i] = w[i-1] + v[(i + a_size - 1) % n] - v[i-1];
}
multiset<int> S;
for(j = 0; j < a_size; j++) S.insert(w[j]);
j--;
int res = *S.begin();
for(i = 1; i < n; i++)
{
S.insert(w[(i + a_size - 1) % n]);
S.erase(S.find(w[i-1]));
res = max(res, *S.begin());
}
cout << res << '\n';
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |