Du bist für die Logistik in einer Weinproduktionsfabrik verantwortlich. Es gibt n Behälter, und an jedem Tag wird genau ein Behälter mit Wein gefüllt. Für jeden Behälter weißt du, wie viele Tage er verschlossen bleiben muss, bevor er geöffnet werden kann. Dein Ziel ist es, die Gesamtzeit zu minimieren, die benötigt wird, um alle Behälter zu öffnen.
Eingabe
Die erste Zeile der Eingabe enthält eine einzelne ganze Zahl n (1 ≤ n ≤ ).
Die nächste Zeile enthält n durch Leerzeichen getrennte ganze Zahlen (1 ≤ ≤ ), die angeben, wie viele Tage jeder Behälter verschlossen bleiben muss, bevor er geöffnet werden kann.
Ausgabe
Das Programm soll die minimale Anzahl an Tagen ausgeben, die du warten musst, bis alle Behälter geöffnet werden können.
Beispiele
Eingabe
Ausgabe
4
2 3 4 3
6
6
39 19 38 39 22 35
41
Erläuterung
Beispiel 1 (die nummerierten Zahlen stellen die Tagnummern dar):
Fill the container that needs to be kept closed for 4 days
Fill the container that needs to be kept closed for 3 days
Fill the container that needs to be kept closed for 3 days
Fill the container that needs to be kept closed for 2 days
Open the containers filled during Day 1 and Day 2
Open the containers filled during Day 3 and Day 4 ⇒ all are open