문제
가정 채소밭이 취미인 비타로는 집의 정원에서 비바 잔디라는 식물을 키우고 있다. 현재, 비바 잔디 i (1 ≤ i ≤ N)의 키는 Ai이다.
성장하는 비바 잔디는 특별한 품종 개량의 결과 물을 줄 때마다 키가 1 늘어난다.
모든 물을 뿌린 후 비바 잔디
다만, 비타로는 서투르기 때문에,
비타로는 물을 주는 횟수를 가능한 한 줄이고 싶다.
비바 잔디의 수와 현재 키의 정보가 주어지면 조건을 충족시키는 데 필요한 물의 횟수를 최소화하는 프로그램을 작성하십시오.
입력
입력 입력은 다음 형식으로 표준 입력에서 제공됩니다. 입력 된 모든 값은 정수입니다.
출력
제약
•
•
출력
필요한 물 주는 횟수의 최솟값을 표준 출력에 한 줄로 출력하라.
부분문제
번호 | 점수 | 조건 |
---|---|---|
#1 | 40점 | |
#2 | 60점 | 추가 제약이 없다. |
예제1
5
3 2 2 3 1
3
다음과 같이 물을 3회 실시함으로써 조건을 만족시킬 수 있다.
• L = 2, R = 5로 비바 잔디 2, 3, 4, 5에 물을 준다. 비바 잔디의 키는 서쪽부터 순서대로 3, 3, 3, 4, 2가 된다.
• L = 2, R = 3으로 비바 잔디 2, 3에 물을 준다. 비바 잔디의 키는 서쪽부터 순서대로 3, 4, 4, 4, 2입니다.
• L = 3, R = 3으로 비바 잔디 3에 물을 준다. 비바 잔디의 키는 서쪽부터 순서대로 3, 4, 5, 4, 2가 된다.
2 회 이하의 물을 주어 조건을 만족시키는 것은 불가능하기 때문에 필요한 물의 횟수의 최소값은 3이다.
예제2
5
9 7 5 3 1
0
이미 조건을 충족했기 때문에 필요한 물 횟수의 최소값은 0입니다.
예제3
2
2021 2021
1
한 번의 물로 조건을 만족시키기 위해서는 L = 1, R = 1로 비바 잔디 1에 물을 주거나, L = 2,
R = 2로 비바 잔디 2에 물을 주면 좋다.
예제4
8
12 2 34 85 4 91 29 85
93