알고리즘 : 프로그래머스 : JAVA : 부족한 금액 계산하기
2022. 1. 15. 14:48ㆍ알고리즘/프로그래머스
반응형
<문제>
<코드>
class Solution {
public long solution(int price, int money, int count) {
long payment = 0;
// 1. 놀이기구를 타기위한 총 비용을 계산
for (int i = 1; i <= count; i++) {
payment += price * i;
}
// 2. 가진 돈과 비교 하여 return 값 지정
return payment - money > 0 ? payment - money : 0;
}
}
<설명>
1. 1부터 count번까지 요금을 곱해가며 총 금액을 payment에 저장한다.
2. 총 금액이 자신이 가지고 있는 금액보다 크다면 차액을 return한다, 아닐시 0을 reuturn한다.
<다른 풀이방법 : 코드>
class Solution {
public long solution(int price, int money, int count) {
long answer;
long sum = 0;
long result;
//요금 합 계산
for(int i=1; i<count+1; i++){
result = i * price;
sum += result;
}
if(sum - money > 0){
answer = sum - money;
}
else answer = 0;
return answer;
}
}
<다른 풀이방법 : 설명>
1. 요금의 합을 계산하기 위해서
for문에서 요금을 곱한 값을 임시로 저장하는 result 변수와 요금의 최종 합을 계산하는 sum 변수를 선언한다.
2. if문을 써서 만약 최종 합이 가진 돈보다 적으면 그 차액을 리턴하고, 아니면 0원을 리턴해라.
-처음에는 int 형으로 선언하였는데 solution 함수가 long 형이라 일부 테스트케이스에서 값이 오버되어 틀렸다고 결과가 나온다. 그래서 변수를 long 형으로 선언한다.
반응형
'알고리즘 > 프로그래머스' 카테고리의 다른 글
알고리즘 : 프로그래머스 : JAVA : 짝수와 홀수 (0) | 2022.01.15 |
---|---|
알고리즘 : 프로그래머스 : JAVA : 직사각형 별찍기 (0) | 2022.01.15 |
알고리즘 : 프로그래머스 : JAVA : 음양 더하기 (0) | 2022.01.15 |
알고리즘 : 프로그래머스 : JAVA : 없는 숫자 더하기 (0) | 2022.01.15 |
알고리즘 : 프로그래머스 : 문자열을 정수로 바꾸기 : JAVA (0) | 2022.01.15 |