(백준) 백준 25704 출석 이벤트 JAVA


(백준) 백준 25704 출석 이벤트 JAVA 1
@notepad_jj2

츄어를 살 수 있도록 코딩해주는 코집사입니다.


1. (백준) 백준 25704 출석 이벤트 JAVA

1) 문제 번호: 25704

2) 문제의 원인

https://www.acmicpc.net/problem/25704

제25704호 : 대면행사

쇼핑몰에서 30일간 대면 이벤트가 진행됩니다.
쇼핑몰 방문 시 1일 1회 방문 스탬프를 받을 수 있으며, 방문 스탬프를 여러 개 모아 할인쿠폰으로 교환할 수 있습니다.
출석 스탬프 수에 따라

www.acmicpc.net

2. 문제

쇼핑몰에서 30일간 대면 이벤트가 진행됩니다.
쇼핑몰 방문 시 1일 1회 방문 스탬프를 받을 수 있으며, 방문 스탬프를 여러 개 모아 할인쿠폰으로 교환할 수 있습니다.

출석 토큰 수에 따라 다양한 종류의 할인 쿠폰을 교환할 수 있습니다.

  • 출석 스탬프 5개 → 500원 할인권
  • 출석 스탬프 10개 → 10% 할인권
  • 출석도장 15개 → 2,000원 ​​할인쿠폰
  • 출석 스탬프 20개 → 25% 할인권

그가 모은 출석 토큰의 수와 그가 살 상품의 가격에 따라 그가 지불해야 하는 최소 금액을 결정합니다.
단, 할인쿠폰은 최대 1매까지 적용 가능합니다.
할인금액이 상품가격보다 큰 경우 결제금액은 0원입니다.

3. 제한

4. 입력

첫 번째 줄에는 경태가 모은 출석점수 N이 주어진다.

두 번째 줄은 경태가 살 아이템의 가격 P를 나타냅니다.
P는 항상 100의 배수입니다.

5. 종료

답을 첫 번째 줄에 인쇄하십시오.

6. 해결

– 범위별 할인된 가격 중에서 가치를 얻고 최소 가치를 사용하세요.

– 아래 코드는 리팩토링이 필요한 코드이므로 참고만 하시면 됩니다.

7. 소스 코드

package test;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collections;
import java.util.StringTokenizer;

public class Main {
	public static void main(String() args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		int N = Integer.parseInt(br.readLine()); // 출석 도장 개수
		int P = Integer.parseInt(br.readLine()); // 물건의 가격
		
		double val = P;
		
		if(N >= 5 && N < 10) {
			val = P - 500;
		} else if(N >= 10 && N < 15) {
			double t1 = P - 500;
			double t2 = P - (P * 0.1);
			
			val = Math.min(t1, t2);
		} else if(N >= 15 && N < 20) {
			double t1 = P - 500;
			double t2 = P - (P * 0.1);
			val = Math.min(t1, t2);
			
			double t3 = P - 2000;
			val = Math.min(val, t3);
			
		} else if(N >= 20) {
			double t1 = P - 500;
			double t2 = P - (P * 0.1);
			val = Math.min(t1, t2);
			
			double t3 = P - 2000;
			val = Math.min(val, t3);
			
			double t4 = P - (P * 0.25);
			val = Math.min(val, t4);
		}
		
		if(val < 0) {
			System.out.println(0);
		} else {
			System.out.println((int)val);			
		}
	}
}