728x90
코딩테스트 연습 - 1주차 | 프로그래머스 (programmers.co.kr)
2021 8월 첫째주 위클리 문제
🔎 문제 설명
놀이기구의 원래 이용료는 price, n번째 이용하면 원래 이용료의 n배를 받는다.
놀이기구를 count번 타게되면 자신이 가진 금액에서 얼마가 모자라는지 return하는 함수 작성
🔎 풀이 과정
인풋으로 이용료, 가진 금액, 이용 횟수(n)가 주어지므로
가진금액 - 1* 이용료 - 2* 이용료 - .... - - n-1*이용료 - n* 이용료 가 양수이면 0을 리턴,
음수이면 값을 양수로 바꿔 리턴해주면 된다.
나는 빼야할 값을 num으로 선언하여 money에서 빼줬다.
<정답 코드>
#include <iostream>
using namespace std;
long long solution(int price, int money, int count)
{
long long answer, num = 0;
for(int i=1;i<=count;i++){
num += i*price;
}
answer = money - num;
if(answer > 0 ) return 0;
else return 0-answer;
}
🔎 실수한 부분
- num의 값이 int형 범위를 넘어가서 long long으로 해줘야 한다
728x90
'Algorithm > Solution' 카테고리의 다른 글
[프로그래머스] 소수 만들기 (0) | 2021.08.06 |
---|---|
[프로그래머스] 음양 더하기 (0) | 2021.08.06 |
[C++] 백준 2644번 촌수계산 (0) | 2021.05.05 |
[C++] 백준 11724 연결 요소의 개수 (0) | 2021.05.02 |
[C++] 백준 8958 OX퀴즈 (0) | 2021.05.02 |