Fascinat de Egiptul Antic, Rareș vrea să construiască cât mai multe piramide din cartonașe pătratice identice. El are la dispoziție N
cartonașe numerotate de la 1
la N
, albe sau gri, așezate în ordinea strict crescătoare a numerelor.
- Prima piramidă o va construi folosind primele trei cartonașe. Baza piramidei va fi formată din cartonașele
1
și2
așezate alăturat, peste care va așeza cartonașul3
(vârful piramidei). - A doua piramidă va avea baza formată din cartonașele
4
,5
și6
așezate alăturat, deasupra cărora se vor așeza cartonașele7
și8
, alăturate, peste care se va așeza cartonașul9
(vârful piramidei). - Mai departe, va construi în ordine piramidele complete cu bazele formate din
4
cartonașe (cu numerele de la10
la13
), respectiv5
cartonașe (cu numerele de la20
la24
),6
cartonașe (cu numerele de la35
la40
) etc., cât timp va putea construi o piramidă completă. De exemplu, dacă Rareș areN=75
cartonașe atunci el va construi piramidele complete1
,2
,3
,4
și5
din imaginile următoare. Din cele75
de cartonașe el va folosi doar primele55
de cartonașe, deoarece ultimele20
cartonașe nu sunt suficiente pentru a construi piramida6
, cu baza formată din7
cartonașe.
Cerințe
Scrieţi un program care să citească numerele naturale N
(reprezentând numărul de cartonașe), X
(reprezentând numărul unui cartonaș), K
(reprezentând numărul de cartonașe albe), numerele celor K
cartonașe albe c
1
, c
2
, …, c
K
și care să determine:
a) numărul P
al piramidei complete ce conține cartonașul numerotat cu X
;
b) numărul M
maxim de piramide complete construite de Rareș;
c) numărul C
de cartonașe nefolosite;
d) numărul A
al primei piramide complete care conține cele mai multe cartonașe albe.
Date de intrare
Fișierul de intrare piramide.in
conține pe prima linie cele trei numere N
, X
şi K
, separate prin câte un spaţiu, cu semnificaţia din enunţ. A doua linie a fişierului conţine, în ordine, cele K
numere c
1
, c
2
,…, c
K
, separate prin câte un spaţiu, reprezentând numerele celor K
cartonașe albe din cele N
.
Date de ieșire
Fișierul de ieșire piramide.out
va conține pe prima linie numărul P
sau valoarea 0
(zero) dacă niciuna dintre piramidele complete construite nu conține cartonașul cu numărul X
. A doua linie a fișierului va conține numărul M
. Cea de-a treia linie va conţine numărul C
. Cea de-a patra linie va conține numărul A
sau valoarea 0
(zero) dacă nicio piramidă completă nu conține cel puțin un cartonaș alb.
Restricții și precizări
N
,X
,K
,c
1
,c
2
,…,c
K
,P
,M
,A
sunt numere naturale nenule.3 ≤ N ≤ 100000
;1 ≤ X ≤ N
;1 ≤ K ≤ N
;1 ≤ c
1
< c
2
<...< c
K
≤ N
- O piramidă completă cu baza formată din
b
cartonașe se construiește prin așezarea cartonașelor necesare peb
rânduri:b
cartonașe pe primul rând (al bazei), apoib-1
cartonașe pe rândul al doilea,b-2
pe rândul al treilea,…, două cartonașe pe rândulb-1
și un cartonaș (vârful piramidei) pe rândulb
. - Pentru rezolvarea cerinţei a) se acordă
20%
din punctaj, pentru cerinţa b)20%
din punctaj, pentru cerinţa c)20%
din punctaj şi pentru cerinţa d)40%
din punctaj.
Exemplu:
piramide.in
75 15 23 5 9 11 18 20 21 25 27 28 30 35 37 45 46 51 55 60 65 68 69 70 71 72
piramide.out
3 5 20 4
Explicație
Piramida 3
(P=3
) construită conține cartonașul cu numărul X=15
. Rareș poate construi doar M=5
piramide complete, rămânând nefolosite 20
cartonașe (C=20
) insuficiente pentru construirea piramidei 6
. Numărul maxim de cartonașe albe dintr-o piramidă completă este egal cu 6
. Piramidele 4
și 5
conțin fiecare un număr maxim de cartonașe albe (6
), prima dintre acestea fiind piramida 4
(A=4
). Ultimele 7
cartonașe albe (cu numerele: 60
, 65
, 68
, 69
, 70
, 71
, 72
) nu sunt folosite în construirea piramidelor complete.