자바/코딩테스트

[백준] 핸드폰 요금 - Java(자바)

대전집주인 2024. 3. 23. 16:54
728x90
SMALL

 

n개의 요금을 받아서 영식 요금제와 민식 요금제로 계산했을때 더 적게 나오는 요금제를 출력하는 문제이다.

단 둘의 금액이 같을경우 요금제이름 둘다 출력한다.

문제를 보면 영식요금제는 30초 미만이면 10원의 요금을 민식요금제는 60초 미만이면 15원으로 요금제를 측정한다.

29초이면 10원 30초면 20원 즉 시간/30 + 1 개념이 된다.

public class Main{
	
	// 핸드폰 요금 1267	
	public static void main(String[] args) throws IOException{
		
		int ys = 0;	// 영식요금제
		int ms = 0; // 민식 요금제
		
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		int n = Integer.parseInt(br.readLine());
		 
		StringTokenizer st = new StringTokenizer(br.readLine());
		
		for(int i =0; i< n; i++) {
			int m = Integer.parseInt(st.nextToken());
			
			ys += ((m/30) + 1) * 10;
			ms += ((m/60) + 1) * 15;
		}
		
		if(ys > ms) {
			System.out.println("M " + ms);
		}else if(ms > ys) {
			System.out.println("Y " + ys);
		}else {
			System.out.println("Y M " + ys);
		}
	}

}
728x90
LIST