193542025-12-05 07:21:09birozsIntervallumok (45 pont)pypy3Hibás válasz 32/45449ms67908 KiB
N = int(input())
pont = list(map(int,input().split()))
Blokk = []
for K in range(1,N):
    if K == 1:
        Blokk.append([[K,pont[-1]-pont[0]],[pont[0]]])
    if K > 1 and N % K == 0:
        if K == 2:
            koz = max([pont[N//2-1]-pont[0],pont[N-1]-pont[N//2]])
            Blokk.append([[2,koz],[pont[N//2-1]-koz,pont[N//2]]])
        else:
            Intervallumok = []
            hossz = N // K
            MaxHossz = 0
            for i in range(N):
                if i % hossz == hossz - 1:
                    Intervallumok.append([i-hossz+1,i])
                    if pont[i] - pont[i-hossz+1] > MaxHossz:
                        MaxHossz = pont[i] - pont[i-hossz+1]
            Szep = []
            Lehet = True
            AktPoz = - 3 * 10**8
            for bal,jobb in Intervallumok:
                if pont[jobb] - AktPoz >= MaxHossz:
                    Szep.append([pont[jobb]-MaxHossz,pont[jobb]])
                    AktPoz = pont[jobb] + 1
                elif jobb < N - 1 and pont[jobb+1] - 1 - AktPoz >= MaxHossz:
                    Szep.append([AktPoz,AktPoz + MaxHossz])
                    AktPoz = AktPoz + MaxHossz + 1
                elif jobb == N - 1 and pont[jobb] - AktPoz >= MaxHossz:
                    Szep.append([AktPoz,AktPoz + MaxHossz])
                else:
                    Lehet = False
                    break
            if Lehet:
                sor = []
                for bal,jobb in Szep:
                    sor.append(bal)
                Blokk.append([[K,MaxHossz],sor])
print(len(Blokk))
for k in Blokk:
    print(k[0][0],k[0][1])
    for x in k[1]:
        print(x)
            
RészfeladatÖsszpontTesztVerdiktIdőMemória
base32/45
1Elfogadva0/039ms19880 KiB
2Elfogadva0/061ms21416 KiB
3Elfogadva1/139ms19572 KiB
4Elfogadva1/143ms19908 KiB
5Hibás válasz0/156ms21464 KiB
6Elfogadva1/167ms22232 KiB
7Elfogadva1/1156ms37960 KiB
8Hibás válasz0/265ms21992 KiB
9Elfogadva2/2209ms38448 KiB
10Elfogadva2/2202ms38192 KiB
11Elfogadva2/2195ms39192 KiB
12Elfogadva2/2184ms38444 KiB
13Elfogadva2/2215ms39020 KiB
14Elfogadva2/290ms23036 KiB
15Elfogadva2/286ms23784 KiB
16Elfogadva2/296ms25064 KiB
17Elfogadva2/2109ms26152 KiB
18Elfogadva2/2119ms26112 KiB
19Elfogadva2/2389ms49916 KiB
20Hibás válasz0/2421ms67868 KiB
21Elfogadva2/2412ms66608 KiB
22Hibás válasz0/2449ms67020 KiB
23Hibás válasz0/2439ms67908 KiB
24Hibás válasz0/2224ms29108 KiB
25Elfogadva2/2291ms47796 KiB
26Hibás válasz0/2293ms49084 KiB
27Elfogadva2/2321ms35064 KiB