본문 바로가기

Algorithm/CodeUp

[CodeUp_Java] Q2001 : 최소 대금

반응형

안녕하세요! Plitche(플리체)입니다.
이번 포스팅의 주제는 Q2001 : 최소 대금 (자바, JAVA)입니다.

Intro

Question

문제 설명

파파 파스타 가게는 점심 추천 파스타와 생과일 쥬스 세트 메뉴가 인기가 좋다.

이 세트 메뉴를 주문하면 그 날의 3 종류의 파스타와 2 종류의 생과일 쥬스에서 하나씩 선택한다.

파스타와 생과일 쥬스의 가격 합계에서 10%를 더한 금액이 대금된다.

어느 날의 파스타와 생과일 쥬스의 가격이 주어 졌을 때, 그 날 세트 메뉴의 대금의 최소값을 구하는 프로그램을 작성하라.

입력

입력은 5 행으로 이루어지며, 한 줄에 하나씩 양의 정수가 적혀있다.
1행의 정수는 첫 번째 파스타 가격이다.
2행의 정수는 두 번째 파스타 가격이다.
3행의 정수는 세 번째 파스타 가격이다.
4행의 정수는 첫 번째 생과일 쥬스 가격이다.
5행의 정수는 두 번째 생과일 쥬스의 가격이다.
(모든 파스타와 생과일 쥬스의 가격은 100 원이상 2000원 이하이다.)

출력

그날 세트 메뉴의 최소 대금을 소수 첫째자리까지 출력하시오.

예시

  • 입력 :
    800
    700
    900
    198
    330
  • 출력 : 987.8

Solution (풀이)

  • 풀이 : 메모리 11156, 시간 : 68
public class Answer1 {

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        int[] pasta = new int[3]; // 파스타와 쥬스의 가격을 저장할 배열 선언
        int[] juice = new int[2];

        double price = 0;
        for (int i=0; i<5; i++) {
            if (i<3) { // 순서대로 저장하되 3개까지만 pasta 배열에 저장
                pasta[i] = Integer.parseInt(br.readLine());
            } else {
                juice[i-3] = Integer.parseInt(br.readLine());
            }
        }

        Arrays.sort(pasta); // 정렬
        Arrays.sort(juice);

        price = pasta[0] + juice[0]; // 최소 금액 더하기

        System.out.println(price + price/10); // 출력
    }

}

Ranking(순위)

반응형