알고리즘/SwExpert recipe

[SWEA] 수영장 D3

컵라면만두세트 2021. 3. 11. 23:37
package Aswexpert;

import java.util.Scanner;

public class 수영장 {
	
	static int [] price, use;
	static int ans = Integer.MAX_VALUE;
	static int ans2 = 0;
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int T = sc.nextInt();// 테스트케이스 수
		price = new int[4];
		use = new int[13]; // 0 은 그냥 공백으로 둘것
		// 이용권 가격 10 40 100 300
		
		for(int tc =1; tc<=T; tc++) {
			ans = Integer.MAX_VALUE;
		
		for(int i=0; i<4; i++) {
			 price[i] = sc.nextInt();
		}
		
		//12월 이용계획 0 0 2 9 1 5 0 0 0 0 0 0
		for(int i =1; i<=12; i++) {
			 use[i] = sc.nextInt(); 
		}
		
		minprice(1,0);
		// 1년 사용값과도 비교
		ans2 = Math.min(ans, price[3]);
		System.out.println("#"+tc+" " + ans2);

		}
	}
	private static void minprice(int num, int sum) {
		if(num>12) {
			ans = Math.min(ans, sum);
			return;
		}
		//하루 이용, 비교 1달을 이용해서 나온 최소값과
		minprice(num+1, sum+Math.min((use[num]*price[0]),price[1]));
		//3달을 이용
		minprice(num+3, sum+price[2]);
		
	}

}