QOJ.ac

QOJ

Time Limit: 1 s Memory Limit: 512 MB Total points: 100

#836. Farma potworów

Statistics

Istnieje $n$ potworów, a $i$-ty potwór ma początkowo $h_i$ punktów zdrowia. Potwór jest uznawany za żywego, jeśli jego HP jest ściśle większe od zera. Twoja siła ataku wynosi $a$, a siła ataku przeciwnika wynosi $b$. Dopóki żyje przynajmniej jeden potwór, ty i twój przeciwnik wykonujecie na zmianę ruchy, atakując potwory (zaczynasz ty).

Jesteś bardzo sprytny, więc w swojej turze możesz zaatakować dowolnego żywego potwora lub nie robić nic. Jeśli zdecydujesz się zaatakować potwora $i$, jego zdrowie $h_i$ zmniejszy się dokładnie o $a$. Po twoim ataku, jeśli potwór zginie (przestanie być żywy), zyskujesz jeden punkt zwycięstwa.

Twój przeciwnik natomiast nie jest tak sprytny. W swojej turze znajduje potwora o najmniejszym indeksie, który jest żywy, i atakuje go (tzn. znajduje najmniejsze $i$ takie, że $h_i > 0$ i zmniejsza $h_i$ dokładnie o $b$).

Jaka jest największa liczba punktów zwycięstwa, jaką możesz uzyskać?

Wejście

Pierwsza linia zawiera trzy liczby całkowite $n, a, b$ ($1 \le n \le 300\,000$, $1 \le a, b \le 10^9$): liczbę potworów oraz siły ataku twoją i przeciwnika. Druga linia zawiera $n$ liczb całkowitych $h_1, h_2, \dots, h_n$ ($1 \le h_i \le 10^9$): punkty zdrowia potworów.

Wyjście

Wypisz jedną liczbę całkowitą: największą liczbę punktów zwycięstwa, jaką możesz uzyskać.

Przykład

Wejście 1

3 1 1
1 1 1

Wyjście 1

2

Wejście 2

3 1 1
2 2 2

Wyjście 2

3

Wejście 3

10 34 100
17 27 73 17 60 12 25 53 31 46

Wyjście 3

5

Uwagi

W pierwszym przykładzie, w swojej pierwszej turze możesz zabić trzeciego potwora, a w drugiej turze możesz zabić drugiego potwora. W drugim przykładzie możesz poczekać, aż najdalej wysunięty na lewo potwór będzie miał $h_i = 1$, a następnie samemu go zabić.

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.