도도는 주방장이다. 총 K개의 요리가 준비되는 최소 시간을 구해야 한다.
각각의 요리사는 자신만의 음식 조리 시간이 있다. 음식 조리 시간은 음식 하나를 만들 때 걸리는 시간이다.
도도는 요리사에게 격려를 해줄 수 있다. 격려받은 요리사는 영구적으로 음식 조리 시간이 1초 감소한다.
도도는 한 요리사에게 여러 번 격려할 수 있고, 요리사의 음식 조리 시간을 1초 미만으로 줄일 수는 없다.
도도를 위해 요리에 걸리는 최소 시간을 출력하는 프로그램을 만들어 보자.
첫째 줄에 요리사의 수 N (1≤ N≤10), 만들어야 할 음식의 개수 K (1≤K≤1,000,000), 격려해줄 수 있는 횟수 C (0 ≤C ≤5)가 주어진다.
둘째 줄에 길이가 N인 정수 수열 A가 주어진다. i번째로 주어지는 수 A_i는 i번째 요리사의 음식 조리 시간이다. (1≤i≤N, 1≤A_i ≤1,000,000)
첫째 줄에 K개의 음식 조리가 완료되는 최소 시간을 출력한다.