게임 쇼에 참여하려고합니다. 도전 과제 중 하나는 다음과 같이 작동합니다.
- 첫 번째 방에는 많은 수의 동일한 공이 있습니다.
- 두 번째 방에는 일련의 슈트가 있으며 각 슈트에는 얼마나 많은 공이 놓여 있는지 계산하는 센서가 있습니다. 슈트에 넣은 볼은 복구 할 수 없습니다.
- 각 슈트는 특정 개수의 볼 ( 트리거 카운트 )이 배치 된 후에 트리거 됩니다. 트리거되면 조명이 깜박이고 소음이 발생하며 트리거되었음을 의심 할 여지가 없습니다.
N
다음 도전을 계속하려면 슈트를 트리거해야합니다 .- 트리거 카운트는 알고 있지만 카운트와 슈트 사이의 대응은 알 수 없습니다.
- 첫 번째 방에서 두 번째 방으로 공을 가져갈 기회가 하나 있습니다. 슈트에 공을 넣으면 더 이상 공을 갈 수 없습니다.
- 당신이 취하는 각 공은 대성공에서 돈을 공제합니다.
당연히 도전을 통과하기를 원하지만 대박 돈 손실을 최소화하고 싶습니다. 필요한 공 수를 알려주는 프로그램, 기능, 동사 등을 작성하십시오.
예
트리거 카운트가 2, 4 및 10이고 2 개의 낙하산을 트리거해야한다고 가정합니다. 10 개의 공으로 통과하는 전략이 있습니다. 첫 번째 슈트에는 최대 4 개의 공을, 두 번째 슈트에는 최대 4 개의 공을, 세 번째 슈트에는 최대 4 개의 공을 놓습니다. 3 개의 슈트 중 하나가 2 개의 볼만으로 트리거되므로 총 10 개만 사용합니다. 10 개 미만으로 작동 할 수있는 전략은 없으므로 올바른 결과입니다.
입력
입력은 정수 트리거 카운트의 배열과 트리거 할 슈트 수를 제공하는 정수로 구성됩니다. 두 가지 입력을 순서에 관계없이 취할 수 있으며 필요한 경우 배열 길이를 가진 세 번째 입력을받을 수 있습니다.
모든 입력이 0보다 크고 트리거해야하는 슈트 수가 슈트 수를 초과하지 않는다고 가정 할 수 있습니다.
당신은 또한 당신의 대답에 명확하게 기술되어있는 한, 카운트가 오름차순 또는 내림차순으로 정렬되어 있다고 가정 할 수 있습니다.
산출
출력은 최적의 전략에 필요한 볼 수를 제공하는 단일 정수 여야합니다.
테스트 사례
체재: N counts solution
1 [2 4 10] 6
2 [2 4 10] 10
3 [2 4 10] 16
1 [3 5 5 5 5 5 5 5 5 5] 5
2 [1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 8 11] 8
2 [1 2 6 6 6 6 6 6 6 10] 16
2 [1 2 3 3 4 4 6 6 6 11] 17
3 [1 2 3 4 5 5 6] 16
3 [2 4 7 7 7 7 7 7 7] 21
5 [1 2 2 3 3 3 3 3 5 9 9 11] 27
2 [5 15 15] 25
1 [4 5 15] 10
3 [1 4 4 4] 10
2 [1 3 4] 6
2 [1 3 3 8] 8