Submission #104602

#TimeUsernameProblemLanguageResultExecution timeMemory
104602alexpetrescuHacker (BOI15_hac)C++14
40 / 100
1067 ms1664 KiB
#include <cstdio>
#include <algorithm>

//FILE *fin = fopen("a.in", "r"), *fout = fopen("a.out", "w");
#define fin stdin
#define fout stdout

#define MAXN 500009

int v[MAXN], u[MAXN], sum[MAXN];

inline int solve(int start, int n) {
    for (int i = (start + 1) % n, j = 1; j < n; i = (i + 1) % n, j++)
        u[j] = v[i];
    int l = n / 2;
    for (int i = 1; i < n; i++)
        sum[i] = sum[i - 1] + u[i];
    int ans = 0;
    for (int i = l; i < n; i++)
        ans = std::max(ans, sum[i] - sum[i - l]);
    return v[start] + sum[n - 1] - ans;
}

int main() {
    int n;
    fscanf(fin, "%d", &n);

    for (int i = 0; i < n; i++)
        fscanf(fin, "%d", &v[i]);

    int ans = 0;
    for (int start = 0; start < n; start++)
        ans = std::max(ans, solve(start, n));

    fprintf(fout, "%d\n", ans);

    fclose(fin);
    fclose(fout);
    return 0;
}

Compilation message (stderr)

hac.cpp: In function 'int main()':
hac.cpp:26:11: warning: ignoring return value of 'int fscanf(FILE*, const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     fscanf(fin, "%d", &n);
     ~~~~~~^~~~~~~~~~~~~~~
hac.cpp:29:15: warning: ignoring return value of 'int fscanf(FILE*, const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         fscanf(fin, "%d", &v[i]);
         ~~~~~~^~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...