QOJ.ac

QOJ

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

#836. Ferme des monstres

Statistics

Il y a $n$ monstres, et le $i$-ième monstre a initialement $h_i$ points de vie. Appelons un monstre vivant si ses PV sont strictement supérieurs à zéro. Vous avez une puissance d'attaque de $a$, et votre adversaire a une puissance d'attaque de $b$. Tant qu'au moins un monstre est encore vivant, vous et votre adversaire jouez à tour de rôle pour combattre les monstres (en commençant par vous). Vous êtes très intelligent, donc à votre tour, vous pouvez attaquer n'importe quel monstre vivant ou ne rien faire. Si vous choisissez d'attaquer un monstre $i$, ses points de vie, $h_i$, diminueront exactement de $a$. Après votre attaque, si le monstre est mort (plus vivant), vous gagnez un point de victoire. Votre adversaire, en revanche, n'est pas aussi intelligent. À son tour, il trouve le monstre avec le plus petit indice qui est encore vivant et l'attaque (c'est-à-dire qu'il trouve le plus petit $i$ tel que $h_i > 0$ et diminue $h_i$ exactement de $b$). Quel est le nombre maximal de points de victoire que vous pouvez obtenir ?

Entrée

La première ligne contient trois entiers $n, a, b$ ($1 \le n \le 300\,000$, $1 \le a, b \le 10^9$) : le nombre de monstres et les puissances d'attaque de vous-même et de votre adversaire, respectivement. La deuxième ligne contient $n$ entiers $h_1, h_2, \dots, h_n$ ($1 \le h_i \le 10^9$) : les points de vie des monstres.

Sortie

Affichez un entier : le nombre maximal de points de victoire que vous pouvez obtenir.

Exemples

Entrée 1

3 1 1
1 1 1

Sortie 1

2

Entrée 2

3 1 1
2 2 2

Sortie 2

3

Entrée 3

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

Sortie 3

5

Remarque

Dans le premier exemple, à votre premier tour, vous pouvez tuer le troisième monstre, et à votre deuxième tour, vous pouvez tuer le deuxième monstre. Dans le deuxième exemple, vous pouvez attendre que le monstre le plus à gauche ait $h_i = 1$, puis le tuer vous-même.

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.