233232026-01-19 12:27:20vargaviviSzorzatország csapata (40 pont)cpp17Accepted 40/4023ms1000 KiB
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;

int main() {
	int n; cin >> n;
    vector<int> v(n + 2, 0), z = {0};
    for (int i = 1; i <= n; i ++) {
        cin >> v[i];
        if (v[i] == 0) z.push_back(i);
    }
    auto it = max_element(v.begin() + 1, v.end() - 1);
    int ans = 0;
    z.push_back(n + 1);
    int ans1 = it - v.begin(), ans2 = ans1;
    for (int i = 1; i < z.size(); i ++) {
        int l = z[i - 1], r = z[i], ln = -1, rn = -1;
        int prod = 0, prod1 = 0, prod2 = 0, db = 0;
        for (int j = l + 1; j < r; j ++) {
            if (abs(v[j]) == 2) {
                prod ++;
                if (ln == -1) prod1 += 1;
            }
            if (v[j] < 0) {
                db ++;
                if (ln == -1) ln = j;
                rn = j;
                prod2 = 0;
            }
            if (abs(v[j]) == 2) prod2 += 1;
        }
        if (l + 1 != r) {
            if (db % 2 == 0) {
                if (prod > ans) {
                    ans = prod;
                    ans1 = l + 1;
                    ans2 = r - 1;
                }
            }
            else {
                if (prod - prod1 > ans && ln != r - 1) {
                    ans = prod - prod1;
                    ans1 = ln + 1;
                    ans2 = r - 1;
                }
                if (prod - prod2 > ans && rn != l + 1) {
                    ans = prod - prod2;
                    ans1 = l + 1;
                    ans2 = rn - 1;
                }
            }
        }
    }
    cout << ans1 << " " << ans2 << "\n";
    return 0;
}
SubtaskSumTestVerdictTimeMemory
base40/40
1Accepted0/01ms512 KiB
2Accepted0/020ms824 KiB
3Accepted1/11ms316 KiB
4Accepted1/11ms316 KiB
5Accepted1/11ms316 KiB
6Accepted1/11ms316 KiB
7Accepted1/11ms316 KiB
8Accepted2/21ms316 KiB
9Accepted2/21ms316 KiB
10Accepted3/323ms820 KiB
11Accepted3/320ms1000 KiB
12Accepted3/319ms808 KiB
13Accepted4/423ms868 KiB
14Accepted4/419ms564 KiB
15Accepted4/419ms564 KiB
16Accepted5/523ms564 KiB
17Accepted5/519ms832 KiB