본문 바로가기
알고리즘 문제풀이

[Backjoon] 10707번 문제 - 수도요금

by 마스터누누 2017. 7. 8.
728x90
반응형

JOI군이 살고 있는 지역에는 X사와 Y사, 두 개의 수도회사가 있다. 두 회사의 수도요금은 한 달간 수도의 사용량에 따라 다음과 같이 정해진다.

  • X사 : 1리터당 A엔.
  • Y사 : 기본요금은 B엔이고, 사용량이 C리터 이하라면 요금은 기본요금만 청구된다. 사용량이 C리터가 넘었을 경우 기본요금 B엔에 더해서 추가요금이 붙는다. 추가요금은 사용량이 C리터를 넘었을 경우 1리터를 넘었을 때마다 D엔이다.

JOI군의 집에서 한 달간 쓰는 수도의 양은 P리터이다.

수도요금이 최대한 싸게 되도록 수도회사를 고를 때, JOI군의 집의 1달간 수도요금을 구하여라.


풀이

x 사와 y사의 수도 요금을 계산한뒤 비교하여 작은 값을 출력한다.

계산 방법은 소스 참조.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import java.util.Scanner;
 
/**
 * Created by homr on 2017. 7. 8..
 */
public class Main {
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        int[] costArr = new int[5];
        int xCost = 0;
        int yCost = 0;
 
        for(int i=0; i<costArr.length; i++){
            costArr[i] = sc.nextInt();
        }
 
        xCost = costArr[0]*costArr[4];
 
        if(costArr[4]<costArr[2]){
            yCost = costArr[1];
        }else{
            yCost = costArr[1+ (costArr[4]-costArr[2])*costArr[3];
        }
 
 
        if(xCost< yCost){
            System.out.println(xCost);
        }else {
            System.out.println(yCost);
        }
 
    }
}
 
cs


반응형

댓글