8403 2024. 01. 15 15:52:15 anon Intervallumok (45 pont) cpp17 Elfogadva 45/45 43ms 11176 KiB
#include <bits/stdc++.h>
#define FastIO ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL)
using namespace std;
typedef long long ll;
const ll INF = (1LL << 62);
int main() {
    FastIO;
    bool ok;
    ll i, j, ms, st, N;
    cin >> N;
    vector<ll> A(N);
    for(i = 0; i < N; i++)
        cin >> A[i];
    vector<pair<ll, vector<ll>>> ans;
    for(i = N; i > 1; i--) {
        if(N % i)
            continue;
        ms = -INF;
        for(j = 0; j < N; j += i)
            ms = max(ms, A[j + i - 1] - A[j]);
        ok = true;
        pair<ll, vector<ll>> na = { ms, {} };
        for(j = i - 1; j < N && ok; j += i) {
            st = max(na.second.empty() ? -INF : (na.second.back() + ms + 1), A[j] - ms);
            if(st > A[j - i + 1]) {
                ok = false;
                break;
            }
            na.second.push_back(st);
        }
        if(ok)
            ans.push_back(na);
    }
    cout << ans.size() << '\n';
    for(const auto &x : ans) {
        cout << x.second.size() << ' ' << x.first << '\n';
        for(const auto &y : x.second)
            cout << y << '\n';
    }
    return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 45/45
1 Elfogadva 0/0 3ms 1832 KiB
2 Elfogadva 0/0 3ms 2044 KiB
3 Elfogadva 1/1 3ms 2232 KiB
4 Elfogadva 1/1 3ms 2420 KiB
5 Elfogadva 1/1 3ms 2396 KiB
6 Elfogadva 1/1 4ms 2724 KiB
7 Elfogadva 1/1 18ms 4188 KiB
8 Elfogadva 2/2 3ms 3100 KiB
9 Elfogadva 2/2 17ms 5248 KiB
10 Elfogadva 2/2 20ms 5936 KiB
11 Elfogadva 2/2 18ms 5612 KiB
12 Elfogadva 2/2 19ms 6176 KiB
13 Elfogadva 2/2 18ms 6008 KiB
14 Elfogadva 2/2 4ms 4168 KiB
15 Elfogadva 2/2 6ms 4484 KiB
16 Elfogadva 2/2 7ms 4644 KiB
17 Elfogadva 2/2 9ms 5256 KiB
18 Elfogadva 2/2 9ms 5212 KiB
19 Elfogadva 2/2 25ms 7248 KiB
20 Elfogadva 2/2 43ms 10720 KiB
21 Elfogadva 2/2 43ms 11176 KiB
22 Elfogadva 2/2 37ms 9848 KiB
23 Elfogadva 2/2 41ms 10544 KiB
24 Elfogadva 2/2 12ms 4912 KiB
25 Elfogadva 2/2 23ms 7132 KiB
26 Elfogadva 2/2 30ms 8832 KiB
27 Elfogadva 2/2 17ms 5388 KiB