ConcursC++17

M and Ms

Andra are un pachet cu nn tipuri de buline de ciocolată, cu câte cic_i buline de fiecare tip ii. Numărul cic_i depinde de patru factori, notați cu xx, yy, zz, tt, și se calculează astfel:

  • c1=xc_1 = x
  • ci=(ci−1⋅y) % t+zc_i = (c_{i−1} \cdot y)\ \%\ t + z, ∀i\forall i, 2≤i≤n2 \leq i \leq n

unde s-a notat cu a % ba\ \%\ b restul împărțirii numărului natural aa la numărul natural nenul bb.

Andra dorește să utilizeze toate bulinele pentru a construi piramide, fiecare fiind formată din unul sau mai multe rânduri, numerotate începând de la 11. Pentru fiecare piramidă în parte, pe rândul ii, se află 2i−12^{i-1} buline. Spre exemplu, pe rândul 88 al unei piramide, se află 27=1282^7 = 128 de buline de ciocolată. Pe fiecare rând al unei piramide se află unul sau mai multe tipuri de buline, iar același tip de buline se poate folosi pe oricâte rânduri. Dintre piramidele care se pot forma, cele serioase conțin pe fiecare rând doar un tip de buline.

Cerință

Folosind toate bulinele, ajutați-o pe Andra să determine:

  1. Numărul minim de piramide de ciocolată pe care le poate forma.
  2. Numărul minim de piramide serioase de ciocolată pe care le poate forma, astfel încât toate cele obținute să fie de acest fel.

Date de intrare

Fișierul de intrare mandms.in conține pe prima linie numărul pp, care poate fi doar 11 sau 22.

Pe a doua linie a fișierului, se află numărul natural nn, cu semnificația din enunț.

Pe a treia linie se află numerele naturale xx, yy, zz, tt, în această ordine, cu semnificația din enunț.

Date de ieșire

Dacă p=1p = 1, fișierul de ieșire mandms.out conține un număr natural, reprezentând valoarea precizată la cerința 1.

Dacă p=2p = 2, fișierul de ieșire mandms.out conține un număr natural, reprezentând valoarea precizată la cerința 2.

Restricții și precizări

  • 1≤n≤2 000 0001 \leq n \leq 2 \ 000 \ 000
  • 1≤x,y,t<2641 \leq x, y, t < 2^{64}
  • 0≤z<2640 \leq z < 2^{64}
  • 1≤ci<2641 \leq c_i < 2^{64}
  • 0≤ci⋅y<2640 \leq c_i \cdot y < 2^{64}, ∀i\forall i, 2≤i≤n2 \leq i \leq n
#PunctajRestricții
130p=1p = 1, n≤1 500 000n \leq 1 \ 500 \ 000, numărul total de buline este strict mai mic decât 2642^{64}
210p=1p = 1, n≤1 500 000n \leq 1 \ 500 \ 000
340p=2p = 2, n≤100 000n \leq 100 \ 000
420p=2p = 2

Exemplul 1

mandms.in

1
8
3 15 18 17

mandms.out

5

Explicație

x=3x = 3, y=15y = 15, z=18z = 18, t=17t = 17

Numărul de buline de cele 88 tipuri se calculează astfel:

  • c1=x=3c_1 = x = 3
  • c2=(3⋅15) % 17+18=29c_2 = (3 \cdot 15)\ \%\ 17 + 18 = 29
  • c3=(29⋅15) % 17+18=28c_3 = (29 \cdot 15)\ \%\ 17 + 18 = 28
  • c4=(28⋅15) % 17+18=30c_4 = (28 \cdot 15)\ \%\ 17 + 18 = 30
  • c5=(30⋅15) % 17+18=26c_5 = (30 \cdot 15)\ \%\ 17 + 18 = 26
  • c6=(26⋅15) % 17+18=34c_6 = (26 \cdot 15)\ \%\ 17 + 18 = 34
  • c7=(34⋅15) % 17+18=18c_7 = (34 \cdot 15)\ \%\ 17 + 18 = 18
  • c8=(18⋅15) % 17+18=33c_8 = (18 \cdot 15)\ \%\ 17 + 18 = 33

Numărul minim de piramide care se pot forma este 55.

O posibilă configurație a piramidei este următoarea:
Figura 1 din enunțul original al problemei M and Ms.Figura 1 din enunțul original al problemei M and Ms.Mărește schema ↗

În această configurație, avem o piramidă cu 77 rânduri, una cu 66 rânduri, una cu 33 rânduri, una cu 22 rânduri, și una cu un singur rând.

Exemplul 2

mandms.in

2
8
3 15 18 17

mandms.out

7

Explicație

x=3x = 3, y=15y = 15, z=18z = 18, t=17t = 17

Numărul de buline de cele 88 tipuri se calculează astfel:

  • c1=x=3c_1 = x = 3
  • c2=(3⋅15) % 17+18=29c_2 = (3 \cdot 15)\ \%\ 17 + 18 = 29
  • c3=(29⋅15) % 17+18=28c_3 = (29 \cdot 15)\ \%\ 17 + 18 = 28
  • c4=(28⋅15) % 17+18=30c_4 = (28 \cdot 15)\ \%\ 17 + 18 = 30
  • c5=(30⋅15) % 17+18=26c_5 = (30 \cdot 15)\ \%\ 17 + 18 = 26
  • c6=(26⋅15) % 17+18=34c_6 = (26 \cdot 15)\ \%\ 17 + 18 = 34
  • c7=(34⋅15) % 17+18=18c_7 = (34 \cdot 15)\ \%\ 17 + 18 = 18
  • c8=(18⋅15) % 17+18=33c_8 = (18 \cdot 15)\ \%\ 17 + 18 = 33

Numărul minim de piramide serioase care se pot forma, astfel încât toate cele obținute să fie serioase, este 77.

O posibilă configurație a piramidei este următoarea:
Figura 2 din enunțul original al problemei M and Ms.Figura 2 din enunțul original al problemei M and Ms.Mărește schema ↗

În această configurație, avem două piramide cu 66 rânduri, două cu 55 rânduri, una cu 33 rânduri, și două cu 22 rânduri.

Sursă și autori

ONI 2024, clasele 8. Măierean Mircea.

Enunț din Kilonova, sub licența CC-BY-NC-SA-4.0, conform politicii sursei. Adaptări de prezentare și tipografie. Exemplele, formulele și figurile originale sunt păstrate.

RÂNDUL TĂU

Trimite o soluție

Editor de cod

Setul original de teste și regulile de punctare sunt în curs de verificare. Trimiterea pentru evaluare va fi disponibilă după această verificare.

Se verifică autentificarea…

Un pas, apoi următorul.Înapoi sus ↑