231242026-01-16 12:51:27MatematikaIntervallumok (45 pont)cpp17Wrong answer 16/4579ms4496 KiB
#include <bits/stdc++.h>
using namespace std;

int main() {
	int n; cin >> n;
    vector<int> vec(n),osztok;
    vector<vector<int>> hosszok;
    vector<int> kozoshossz;
    for(auto& z:vec)
        cin >> z;
    for(int i=1; i<=sqrt(n); i++)
    {
        if(n%i==0)
        {
            osztok.push_back(i);
            if(i!=n/i)
                osztok.push_back(n/i);
        }
    }
    sort(osztok.begin(),osztok.end());
    osztok.pop_back();
    /*for(auto& z:osztok)
        cerr << z << " ";*/
    for(auto& z:osztok)
    {
        int hossz=0;
        int kezdo=0,veg=0;
        while(veg<n && kezdo<n)
        {
            veg=n/z - 1 + kezdo;
            hossz=max(hossz, vec[veg]-vec[kezdo]);
            kezdo=veg+1;
            //cerr << veg << " ";
        }
        bool lehet=true;
        vector<int> kezdesek;
        int aktualis=n/z-1;
        while(aktualis<n)
        {
        //cerr << aktualis << " " << hossz << "\n";
            kezdesek.push_back(vec[aktualis]-hossz);
            aktualis+=n/z;
            if(kezdesek.size()>1 && kezdesek.back()<kezdesek[kezdesek.size()-2]+hossz)
            {
                //cerr << kezdesek.back() << " mi a szar " << kezdesek[kezdesek.size()-2]+hossz << "\n";
                lehet=false;
            }
        }
        if(lehet)
        {
            hosszok.push_back(kezdesek);
            kozoshossz.push_back(hossz);
        }
    }
    cout << hosszok.size() << "\n";
    for(int i=0; i<hosszok.size(); i++)
    {
        cout << hosszok[i].size() << " " << kozoshossz[i] << "\n";
        for(auto& z:hosszok[i])
        {
            cout << z << "\n";
        }
        //cout << "\n";
    }
}
SubtaskSumTestVerdictTimeMemory
base16/45
1Accepted0/01ms316 KiB
2Wrong answer0/01ms508 KiB
3Accepted1/11ms316 KiB
4Accepted1/11ms316 KiB
5Wrong answer0/11ms316 KiB
6Accepted1/16ms316 KiB
7Accepted1/148ms1132 KiB
8Wrong answer0/21ms316 KiB
9Wrong answer0/232ms1180 KiB
10Wrong answer0/237ms1432 KiB
11Wrong answer0/230ms820 KiB
12Wrong answer0/237ms1588 KiB
13Wrong answer0/232ms1180 KiB
14Accepted2/24ms568 KiB
15Accepted2/28ms564 KiB
16Accepted2/29ms820 KiB
17Accepted2/214ms1076 KiB
18Wrong answer0/214ms1056 KiB
19Accepted2/252ms1656 KiB
20Wrong answer0/275ms4348 KiB
21Accepted2/279ms4496 KiB
22Wrong answer0/265ms3188 KiB
23Wrong answer0/271ms3896 KiB
24Wrong answer0/228ms820 KiB
25Wrong answer0/235ms1316 KiB
26Wrong answer0/250ms2756 KiB
27Wrong answer0/241ms1072 KiB