Montée des eaux – Qualification 2016

Niveau 2

Énoncé

Le grand conseil des Prolosaures, un groupe plus malin que la plupart de leurs congénères, cherche un moyen de calculer le volume gagné par la mer lors du déluge.

On vous donne une liste de nombres représentant les altitudes des différentes montagnes qui composent le continent ainsi que l’altitude globale atteinte par la montée des eaux. Écrivez un programme qui indique le volume total de l’eau au-dessus des zones inondées, sachant que la surface du sommet de chaque montagne vaut 1. Par exemple, si l'altitude d'une montagne est 20 et que l'altitude de l'eau est 23, alors cette montagne contribue pour un volume de 3 unités (voir exemples).

Entrée

L’entrée comprendra :

  • un entier relatif h correspondant à l’altitude atteinte par la mer ;
  • sur la ligne suivante, un entier naturel non nul N correspondant au nombre de montagnes ;
  • sur la ligne suivante, N entiers relatifs yi séparés par des espaces, représentant l’altitude de chaque montagne.

Sortie

Vous afficherez en sortie :

  • Le volume total V d’eau au-dessus des terres submergées.

Contraintes

  • -100 000 ≤ h ≤ 100 000 ;
  • 1 ≤ N ≤ 10 000 ;
  • -100 000 ≤ yi ≤ 100 000 ;
  • 0 ≤ V ≤ 100 000 000.

Contraintes d'exécution

Utilisation mémoire maximum
1000 kilo-octets
Temps d'exécution maximum
500 millisecondes

Exemples d'entrée/sortie

Exemple d'entrée
-91
13
-41 -47 -52 -57 -74 -77 -23 -14 -56 2 -74 -40 -59
Exemple de sortie
0
Commentaire

Ici, aucune terre n'est recouverte, le volume d'eau est donc nul.

Exemple d'entrée
-42
12
-53 35 -44 -55 -47 -65 42 -25 -6 78 -7 -79
Exemple de sortie
91
Commentaire

Ici, 91 unités d'eau recouvrent les terres. Par exemple, l'eau au-dessus de la première montagne contribue pour 11 unités.