Fișierul intrare/ieșire magic3.in, magic3.out Sursă ONI 2015 clasa a 8-a
Autor Livia Țoca Adăugată de avatar cella.florescu Cella Florescu cella.florescu
Timp de execuție pe test 0.1 sec Limită de memorie 5120 KB
Scorul tău N/A Dificultate stea de rating de tip fullstea de rating de tip emptystea de rating de tip emptystea de rating de tip emptystea de rating de tip empty
open book Poți vedea testele pentru această problemă accesând atașamentele .

Magic3 (clasa a 8-a)

Pentru obținerea Pietrei Filosofale, un alchimist a preparat un elixir folosind un creuzet de capacitate C, în care a turnat picături de metal topit, într-o ordine bine stabilită, în N etape. Numărul de picături turnate într-o etapă este cuprins între 0 și C – 1, iar procesul începe când în creuzet s-a turnat prima picătură (în prima etapă numărul de picături turnate este nenul). Picăturile se adună în creuzet una câte una și, de fiecare dată când acesta se umple complet, alchimistul rostește o formulă magică, provocând transformarea întregului conținut într-o singură picătură, apoi continuă procesul. O rețetă de obținere a elixirului se exprimă printr-un șir de N numere, reprezentând numărul de picături turnate în cele N etape.

De exemplu, aplicând rețeta 5 6 1 0, cu un creuzet de capacitate C = 7, în cele N = 4 etape procesul este:
- etapa 1: se toarnă 5 picături;
- etapa a 2-a: se toarnă 6 picături, astfel: după primele 2 picături se umple creuzetul ( 5 + 2 = 7 ) și deci se rostește formula magică, în creuzet rămânând o picătură; se continuă cu celelalte 4 picături; la finalul etapei în creuzet sunt 5 picături ( 1 + 4 = 5 );
- etapa a 3-a: se toarnă o picătură; la finalul etapei în creuzet sunt 6 picături ( 5 + 1 = 6 );
- etapa a 4-a: se toarnă 0 picături; după ultima etapă creuzetul conține 6 picături ( 6 + 0 = 6 ).

O rețetă care corespunde Pietrei Filosofale trebuie să conducă, la finalul aplicării ei, la obținerea unei singure picături, chintesența metalelor amestecate. Bineînțeles, sunt mai multe astfel de rețete. Fiind un tip responsabil, alchimistul a lăsat posterității un set de tratate, care cuprind toate aceste rețete. El a scris pe fiecare pagină câte o rețetă, astfel încât niciuna să nu se repete în cadrul întregii lucrări. Pe vremea aceea erau meșteri pricepuți, care fabricau tratate de dimensiuni corespunzătoare, încât fiecare pagină să poată cuprinde o rețetă ca a noastră, oricât de lungă ar fi ea. Fiecare tratat are P pagini și doar după ce completează toate cele P pagini ale unui tratat, alchimistul începe un nou tratat.

Cerință

Se cere numărul de rețete publicate în ultimul tratat.

Date de intrare

Fișierul de intrare magic3.in conține pe prima linie, în această ordine, numerele naturale C, N, P, separate prin câte un spațiu și având semnificația din enunț.

Date de ieșire

Fișierul magic.out conține un număr natural reprezentând numărul de rețete publicate în ultimul tratat.

Restricții

  • 2 ≤ C, N, P ≤ 10.000.000, numere naturale.
  • pentru 30% din teste, C ≤ 10 si N ≤ 9; iar pentru 70% din teste, N ≤ 10.000.

Exemplu

magic3.in magic3.out
4 2 3
1

Explicație

Creuzetul are capacitatea C = 4, sunt N = 2 etape de aplicare a fiecărei rețete, tratatele au câte P = 3 pagini. Rețetele aplicate în două etape, în urma fiecărui astfel de proces rămânând în creuzet câte o singură picătură, sunt: 1 0; 1 3; 3 1; 2 2. Pentru acestea sunt necesare două tratate, primul conținând trei rețete, iar al doilea (ultimul) o singură rețetă.

Trebuie să te autentifici pentru a trimite soluții. Click aici

Indicii de rezolvare

Arată 2 categorii