클래시 로얄 (Small)
시간 제한5초메모리 제한512 MB
M개의 코인으로 N장의 카드를 강화한 뒤 8장을 골라 덱 공격력 합의 최댓값을 구한다.
문제
클래시 로얄은 실시간 전략 카드 게임이다. 카드마다 공격력과 레벨이 있다. 플레이어는 카드 8장을 골라 배틀 덱을 만들며, 덱의 총 공격력은 덱에 든 카드 공격력의 합이다. 플레이어는 배틀 덱의 카드를 경기장에 내려놓으며 서로 싸운다. 배틀에서 이기면 코인을 받고, 코인으로 카드를 업그레이드할 수 있다. 카드를 업그레이드하면 공격력이 오른다.
며칠 동안 경기장에서 싸운 끝에 숀은 코인을 모두 개 모았고, 카드 몇 장을 업그레이드하기로 했다. 숀에게는 카드가 장 있다. 번째 카드의 레벨은 부터 까지이며, 레벨이 일 때 공격력은 이다. 카드는 한 번에 한 레벨씩만 올릴 수 있고, 번째 카드를 레벨 에서 레벨 로 올리려면 코인 개가 든다. 업그레이드를 하기 전 번째 카드의 레벨은 이다.
숀은 코인의 일부 또는 전부를 써서 카드를 업그레이드한 뒤, 정확히 8장으로 덱을 만들려고 한다. 덱의 총 공격력이 가장 커지도록 도와주자. 코인이 충분하면 같은 카드를 여러 번 업그레이드해도 되고, 모든 카드를 업그레이드할 필요는 없다.
입력
첫째 줄에 테스트 케이스의 수 가 주어진다. 이어서 개의 테스트 케이스가 주어진다.
각 테스트 케이스의 첫 줄에는 숀이 가진 코인의 수 과 카드의 수 이 주어진다. 그다음 개의 블록이 이어지며, 번째 블록은 번째 카드를 설명하는 세 줄로 이루어진다.
- 첫째 줄에는 카드의 최대 레벨 와 현재 레벨 가 주어진다.
- 둘째 줄에는 각 레벨의 공격력 가 주어진다.
- 셋째 줄에는 레벨이 인 카드를 한 레벨 올리는 데 드는 코인의 수 이 주어진다. 이면 이 줄은 빈 줄이다.
출력
각 테스트 케이스마다 Case #x: y 형식으로 한 줄을 출력한다. 는 1부터 시작하는 테스트 케이스 번호이고, 는 숀이 가진 코인으로 만들 수 있는 덱의 총 공격력 중 최댓값이다.
제한
힌트
예제의 첫 번째 테스트 케이스에서는 앞의 카드 4장을 레벨 3으로, 5번째와 6번째 카드를 레벨 2로 올리고 마지막 두 장은 레벨 1로 둔다. 비용은 코인이고, 총 공격력은 로 가능한 최댓값이다.
두 번째 테스트 케이스에서는 카드가 10장이므로 그중 8장을 골라 덱을 만든다.