- greutatea totală suportată de o barcă este
C
; - dacă în barcă se aşază două persoane, atunci diferența în modul dintre greutățile acestora trebuie să fie maxim
B
, în caz contrar barca nu este balansată și riscă să se răstoarne.
Dacă o singură persoană se aşază în barcă, nu se aplică restricția a doua.
Cerința
Care este numărul minim de bărci necesare pentru a putea plimba toţi elevii în condiţii de siguranţă?
Date de intrare
Fișierul de intrare barci.in
conţine pe prima linie trei numere naturale separate prin spaţiu: N
, C
și B
, reprezentând numărul de elevi, capacitatea maximă a unei bărci şi respectiv diferenţa maximă dintre greutatea a două persoane care se pot aşeza în aceeaşi barcă. Pe a doua linie se află N
numere naturale separate prin spaţiu w[i]
(1 ≤ i ≤ N
), reprezentând greutăţile celor N
elevi.
Date de ieșire
Fișierul de ieșire barci.out
va conţine o singură linie pe care va fi scris numărul minim de bărci necesare.
Restricții și precizări
1 ≤ N ≤ 100 000
1 ≤ w[i] ≤ C ≤ 1 000 000 000
, pentru1 ≤ i ≤ N
0 ≤ B ≤ 1 000 000 000
- Pentru teste în valoare de
30
de puncte,N ≤ 10
- Pentru teste în valoare de
60
de puncte,N ≤ 1000
Exemplu:
barci.in
8 100 10 81 37 32 88 55 93 45 72
barci.out
6
Explicație
Configuraţia celor 6 bărci poate fi următoarea:
1: (81)
2: (37, 32)
deoarece 37+32 ≤ 100
şi 37-32 ≤ 10
3: (88)
4: (55, 45)
deoarece 55 + 45 ≤ 100
şi 55 – 45 ≤ 10
5: (93)
6: (72)