<문제 제시>
머쓱이네 양꼬치 가게는 10인분을 먹으면 음료수 하나를 서비스로 줍니다.
양꼬치는 1인분에 12,000원, 음료수는 2,000원입니다.
정수 n과 k가 매개변수로 주어졌을 때, 양꼬치 n인분과 음료수 k개를 먹었다면
총얼마를 지불해야 하는지 return 하도록 solution 함수를 완성해보세요.
<예시 입출력>
<문제 해결 과정>
이전의 피자 나눠 먹기 문제와 유사한 것 같았다. 간단한 연산으로 계산 후 서비스 값만 추가해주면 될 것 같았다.
먼저 양꼬치와 음료수 값을 구하고,
int answer = 0;
int drink = 0; // 음료수 서비스 개수
// 양꼬치 값 합산
answer += n * 12000;
// 음료수 값 합산
answer += k * 2000;
만약 양꼬치가 10인분이 넘어가면, drink값을 조정해서 그만큼 n에서 차감한다.
if(n >= 10) {
drink = n / 10;
n -= drink * 10;
}
다시 answer값을 업데이트해주고, 그 값을 반환하면되는 문제이다.
<전체코드>
public class lamb_skewers {
public static int solution(int n, int k) {
int answer = 0;
int drink = 0; // 음료수 서비스 개수
// 양꼬치 값 합산
answer += n * 12000;
// 음료수 값 합산
answer += k * 2000;
if(n >= 10) {
drink = n / 10;
n -= drink * 10;
}
// 음료수 서비스 가격 차감
answer -= drink * 2000;
return answer;
}
public static void main(String[] args) {
int n = 10;
int k = 3;
System.out.println(solution(n, k));
}
}
유사한 문제가 많으나 이번 문제는 서비스의 기준이 명확해서 구하기 어렵지 않은 문제였다.
문제링크)
https://school.programmers.co.kr/learn/courses/30/lessons/120830
'Algorithms > 프로그래머스' 카테고리의 다른 글
[프로그래머스] '다음에 올 숫자' - Java (0) | 2023.02.24 |
---|---|
[프로그래머스] '최빈값 구하기' - Java (0) | 2023.02.24 |
[프로그래머스] '분수의 덧셈' - Java (0) | 2023.02.23 |
[프로그래머스] '문자열 뒤집기' - Java (0) | 2023.02.22 |
[프로그래머스] '직각삼각형 출력하기' - Java (0) | 2023.02.22 |