코딩테스트/Programmers Level 1
23일차. 부족한 금액 계산하기
자유로운영혼이다냥
2023. 12. 17. 22:00
링크
https://school.programmers.co.kr/learn/courses/30/lessons/82612
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제
정답
solution = lambda price, money, count: max(0, (((count*(count+1))//2)*price)-money)
풀이과정
지불할 금액은 n번쨰 탑승한 놀이기구는 price*n이다. 그러면 등차수열의 합 공식에 의해 일반항은 초항+등차*( n(n-1) )/2, 초항=등차일경우 등차*n*(n+1)이 된다.
pay = ((count*(count+1))//2)*price
자 그러면 이제 해당값에서 money를 뺴고 남은값이 모자란 돈이 된다. 만약 -라면 돈이 충분한것이므로 max(0, )를 씌워 0을 출력한다.
return max(0, pay)