-
프로그래머스 - 부족한 금액 계산하기알고리즘 2022. 6. 29.반응형
내 풀이
public class P_32 { public long solution(int price, int money, int count) { // 부족한 금액 계산하기 long answer = -1; long cal_price = price; for(int i=2; i<=count; i++) { cal_price += (price * i); } answer = Math.abs(money - cal_price); if(money - cal_price >= 0) { answer = 0; } return answer; } public static void main(String[] args) { P_32 p = new P_32(); int price = 3; int money = 20; int count = 4; System.out.println(p.solution(price, money, count)); } }
간단한 문제지만 주의할 점
int형으로 계산을 돌리면 테스트19 ~ 22가 오류가 나온다.
아마 int형의 자릿수 한계를 넘어서서 계산하기 때문인 것 같다.
long형으로 계산해줘야 한다.
Math의 abs() 메소드 = 절대값 구할때 사용
다른 사람 풀이
class Solution { public long solution(long price, long money, long count) { return Math.max(price * (count * (count + 1) / 2) - money, 0); } }
등차수열의 합을 이용한 풀이 방법
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=junhyuk7272&logNo=221247061276
반응형'알고리즘' 카테고리의 다른 글
프로그래머스 - 2016년 (0) 2022.07.01 프로그래머스 - 최소직사각형 (0) 2022.06.30 프로그래머스 - 다트 게임 [2018 KAKAO BLIND RECRUITMENT] (0) 2022.06.28 프로그래머스 - 가운데 글자 가져오기 (0) 2022.06.26 프로그래머스 - 같은 숫자는 싫어 (0) 2022.06.14