반응형
[프로그래머스] Java 코딩테스트 연습 - 옷가게 할인 받기
문제 출처
https://school.programmers.co.kr/learn/courses/30/lessons/120818
문제
머쓱이네 옷가게는 10만원 이상 사면 5%, 30만원 이상 사면 10%, 50만원 이상 사면 20%를 할인해줍니다. 구매한 옷의 가격 price가 주어질 때, 지불해야 할 금액을 return하도록 solution 함수를 완성해보세요.
풀이
if문의 조건이 >=(이상) 조건이므로 가장 큰 값을 먼저 걸러주고 내려와야 한다. 반대로 <=(이하) 조건일 경우엔 작은 값을 먼저 거르고 내려와야 한다.
0.8, 0.9, 0.95가 double형이기 때문에 int형으로 변환해야 한다.
소스코드
class Solution {
public int solution(int price) {
int answer = 0;
if (price >= 500000) {
answer = (int) (price * 0.8);
} else if (price >= 300000) {
answer = (int) (price * 0.9);
} else if (price >= 100000) {
answer = (int) (price * 0.95);
} else {
answer = price;
}
return answer;
}
}
다른 사람의 풀이
오,,간결하다,,
class Solution {
public int solution(int price) {
int answer = 0;
if(price>=500000) return (int)(price*0.8);
if(price>=300000) return (int)(price*0.9);
if(price>=100000) return (int)(price*0.95);
return price;
}
}
반응형
'코딩테스트연습 > [프로그래머스] Java' 카테고리의 다른 글
[프로그래머스] Java 코딩테스트 연습 - 숨어있는 숫자의 덧셈 (2) (0) | 2023.07.22 |
---|---|
[프로그래머스] Java 코딩테스트 연습 - 배열의 평균값 (0) | 2023.07.20 |
[프로그래머스] Java 코딩테스트 연습 - 아이스 아메리카노 (0) | 2023.07.20 |
[프로그래머스] Java 코딩테스트 연습 - 나이 출력 (0) | 2023.07.20 |
[프로그래머스] Java 코딩테스트 연습 - 배열 뒤집기 (0) | 2023.07.20 |