189902025-11-13 20:28:10MagyarKendeSZLGIntervallumok (45 pont)cpp17Hibás válasz 14/4541ms6136 KiB
#include <bits/stdc++.h>
using namespace std;
#define int int64_t

int32_t main() {
    cin.tie(0), ios::sync_with_stdio(0);
    int n;
    cin >> n;
    vector<int> a(n);
    for (int& x : a) cin >> x;

    vector<vector<int>> res;
    vector<int> res_w;
    for (int k = 1; k < n; k++) {
        if (n % k) continue;
        int nk = n / k;
        int w = 0;
        for (int i = nk - 1; i < n; i += nk) {
            int j = i - nk + 1;
            w = max(w, a[i] - a[j]);
        }
        bool ok = 1;
        int over = 0;
        for (int i = 2 * nk - 1; i < n - 1; i += nk) {
            int j = i - nk;
            if (a[i] - a[j] - over < w) {
                over = w - (a[i] - a[j] - over);
                if (over > a[i + 1] - a[i]) {
                    ok = 0;
                    break;
                }
            }
        }
        if (!ok) { continue; }
        res_w.push_back(w);
        res.push_back({});
        for (int i = nk - 1; i < n; i += nk) {
            res.back().push_back(a[i] - w);
        }
    }

    cout << res.size() << "\n";
    for (int i = 0; i < (int)res.size(); i++) {
        cout << res[i].size() << " " << res_w[i] << "\n";
        for (int x : res[i]) cout << x << "\n";
    }
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base14/45
1Elfogadva0/01ms512 KiB
2Hibás válasz0/01ms316 KiB
3Elfogadva1/11ms316 KiB
4Elfogadva1/11ms316 KiB
5Hibás válasz0/11ms508 KiB
6Elfogadva1/12ms316 KiB
7Elfogadva1/116ms1076 KiB
8Hibás válasz0/21ms316 KiB
9Hibás válasz0/214ms1848 KiB
10Hibás válasz0/217ms2224 KiB
11Hibás válasz0/216ms1976 KiB
12Hibás válasz0/217ms2224 KiB
13Hibás válasz0/216ms1968 KiB
14Elfogadva2/23ms568 KiB
15Elfogadva2/24ms820 KiB
16Elfogadva2/24ms1076 KiB
17Elfogadva2/28ms1332 KiB
18Hibás válasz0/28ms1332 KiB
19Hibás válasz0/226ms3116 KiB
20Hibás válasz0/241ms5868 KiB
21Elfogadva2/241ms6136 KiB
22Hibás válasz0/235ms4840 KiB
23Hibás válasz0/239ms5612 KiB
24Hibás válasz0/29ms820 KiB
25Hibás válasz0/219ms2928 KiB
26Hibás válasz0/228ms4212 KiB
27Hibás válasz0/213ms1076 KiB