tbile

Time limit: 0.2s Memory limit: 8MB Input: tbile.in Output: tbile.outPoints by default: 10p

Roboțelul Nino a primit cadou un dispozitiv care inscripționează bile. Dispozitivul poate fi încărcat cu nn bile, ce vor fi inscripționate în ordine, cu numerele 1,2,,n1, 2, \dots, n.

Nino trebuie să împartă bilele inscripționate în două șiruri, XX și YY, astfel:

  • La primul pas Nino va pune în primul șir bila cu numărul 11 (X1=1X_1 = 1), iar în al doilea șir bila cu numărul 22 (Y1=2Y_1 = 2).
  • La al doilea pas Nino va pune în primul șir bila cu numărul 33 (X2=3X_2 = 3), iar în al doilea șir bila cu numărul 44 (Y2=4Y_2 = 4).
  • La fiecare pas i3i \geq 3 Nino va pune în șirul XX bila Xi=Xi1+Yi1X_i = X_{i-1} + Y_{i-1}, iar în șirul YY, în ordine crescătoare, bilele numerotate cu Xi1+1,Xi1+2,,Xi1X_{i-1}+1, X_{i-1}+2, \dots, X_i-1, cu excepția bilei 44 care a fost pusă deja.

Dacă la un pas kk, Xk>nX_k > n, bilele rămase vor fi inscripționate cu valorile Xk1+1,Xk1+2,,nX_{k-1}+1, X_{k-1}+2, \dots, n și vor fi puse în șirul YY.

Pentru că bilele se rostogolesc, Nino împachetează în tuburi verticale de culoare galbenă, bilele din primul șir, iar în tuburi verticale de culoare roșie, bilele din al doilea șir. În fiecare tub încap cel mult mm bile, dispuse pe o singură coloană. Tuburile sunt așezate vertical, întâi cele galbene, în ordinea umplerii, apoi cele roșii în ordinea umplerii lor. Bilele de la baza fiecărui tub formează nivelul 11, cele situate imediat deasupra lor formează nivelul 22 etc., nivelul maxim putând fi mm.

Cerință

Se dau numerele naturale nn și mm și se cere să se determine:

  1. Numărul de tuburi de culoare roșie necesare pentru a împacheta bilele din șirul YY și numărul total de bile conținute de acestea.
  2. Pentru un nivel vv dat, suma numerelor inscripționate pe bilele de pe nivelul vv.

Date de intrare

Fișierul de intrare tbile.in conține pe prima linie un număr natural cc reprezentând cerința care trebuie să fie rezolvată (11 sau 22), pe a doua linie un număr natural nn, reprezentând numărul de bile ce se inscripționează, iar pe cea de a treia linie un număr natural mm, reprezentând numărul de bile care încap într-un tub. Dacă cerința este c=2c = 2, fișierul de intrare conține, în plus, pe a patra linie, un număr natural vv reprezentând numărul unui nivel.

Date de ieșire

Dacă cerința este c=1c=1, atunci, pe prima linie a fișierului tbile.out, vor fi scrise două numere naturale, separate printr-un spațiu, reprezentând, în această ordine, numărul de tuburi de culoare roșie necesare pentru a împacheta bilele din șirul YY, respectiv, numărul total de bile conținute de acestea.
Dacă cerința este c=2c=2, atunci, pe prima linie a fișierului tbile.out va fi scris un număr natural reprezentând suma numerelor inscripționate pe bilele de pe nivelul vv.

Restricții și precizări

  • 5n2 000 000 0005 \leq n \leq 2 \ 000 \ 000 \ 000;
  • 1vm311 445 0151 \leq v \leq m \leq 311 \ 445 \ 015;
  • Se acordă 3030 de puncte pentru rezolvarea corectă a cerinței 11 și 6060 de puncte pentru rezolvarea corectă a cerinței 22. Se acordă 1010 puncte din oficiu.

Exemplul 1

tbile.in

1
36
5

tbile.out

6 29

Explicație

Primul șir va conține 77 bile (1,3,7,12,18,26,35)(1, 3, 7, 12, 18, 26, 35), iar cel de al doilea 367=2936-7=29 de bile (ca în figura de mai sus). Sunt necesare 66 tuburi de capacitate 55.

Exemplul 2

tbile.in

2
36
5
3

tbile.out

126

Explicație

Pe nivelul 33 se găsesc bilele inscripționate cu numerele 7,5,11,17,23,297, 5, 11, 17, 23, 29 și 3434. Suma acestor valori este 126126.

Log in or sign up to be able to send submissions!