문제
쇼핑몰에서 30일간 출석 이벤트를 진행한다. 쇼핑몰의 사이트를 방문하면 1일 1회 출석 도장을 받을 수 있고, 출석 도장을 여러 개 모아서 할인 쿠폰으로 교환할 수 있다.
출석 도장의 개수에 따라 교환할 수 있는 할인 쿠폰의 종류가 달라진다.
- 출석 도장 5개 → 500원 할인 쿠폰
- 출석 도장 10개 → 10% 할인 쿠폰
- 출석 도장 15개 → 2,000원 할인 쿠폰
- 출석 도장 20개 → 25% 할인 쿠폰
경태가 모은 출석 도장의 개수와 구매할 물건의 가격이 주어졌을 때, 경태가 지불해야 하는 최소 금액을 구하시오. 단, 할인 쿠폰은 최대 하나만 적용 가능하다. 할인 금액이 물건의 가격보다 더 큰 경우 지불해야 하는 금액은 0원이다.
입력
첫째 줄에 경태가 모은 출석 도장의 개수 N이 주어진다.
둘째 줄에 경태가 구매할 물건의 가격 P가 주어진다. P는 항상 100의 배수이다.
ex)
12
50000
23
3000
출력
첫째 줄에 정답을 출력한다.
ex)
45000
1000
코드
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.*;
public class Main {
public static void main(String[] args)throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N=Integer.parseInt(br.readLine());
int P=Integer.parseInt(br.readLine());
int result=0;
List<Integer> num=new ArrayList<Integer>();
num.add(0);
if(N>=5){
num.add(500);
}
if(N>=10){
num.add(P/10);
}
if(N>=15){
num.add(2000);
}if(N>=20){
num.add(P/4);
}
result=P-Collections.max(num);
if(result<0){
result=0;
}
System.out.println(result);
}
}
'java > 백준 java' 카테고리의 다른 글
[자바/Java] 백준 5524번 입실 관리 (0) | 2023.02.07 |
---|---|
[자바/Java] 백준 23037번 5의 수난 (0) | 2023.02.06 |
[자바/Java] 백준 27110번 특식 배부 (0) | 2023.02.03 |
[자바/Java] 백준 27294번 몇개고? (2) | 2023.02.01 |
[자바/Java] 백준 1673번 치킨 쿠폰 (0) | 2023.01.30 |