백준|1049번|기타줄

JSK·2022년 7월 31일
0

자바 PS풀이

목록 보기
23/51

문제설명
기타줄의 낱개가격과 6개묶음의 가격들을 입력받고 필요한 수량 이상의 기타줄을 구매하는데 드는 최소 비용을 출력하는 문제입니다.

작동 순서
1. 필요한 기타줄의 개수 N과 기타줄의 종류의 개수 M을 입력받습니다.
2. 낱개의 가격과 6개묶음의 가격들을 입력하고 각각 최소 값들을 저장합니다.
3. 모두 묶음으로 사는 경우, 묶음과 낱개의 조합으로 사는 경우, 모두 낱개로 사는 경우 중 필요 비용이 가장 낮은 경우의 비용을 출력합니다.

소스코드

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class 백준_1049번_기타줄 {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String[] input = br.readLine().split(" ");
        int N=Integer.parseInt(input[0]), M=Integer.parseInt(input[1]);
        int packMin=1001, indMin=1001;
        for(int i=0;i<M;i++){
            input=br.readLine().split(" ");
            packMin=Math.min(packMin,Integer.parseInt(input[0]));
            indMin=Math.min(indMin,Integer.parseInt(input[1]));
        }
        System.out.print(Math.min((N/6)*packMin+Math.min(packMin, (N%6)*indMin),N*indMin));
    }
}
profile
학사지만 AI하고 싶어요...

0개의 댓글