본문 바로가기

Algorithm

Algorithm(Swift) - 부족한 금액 계산하기

프로그래머스 위클리 챌린지 1주차에 있는 부족한 금액 계산하기 문제입니다.

 

입출력 설명상에서

 

이용금액이 3인 놀이기구를 4번 타고 싶은 고객이 현재 가진 금액이 20이라면, 총 필요한 놀이기구의 이용 금액은
30 (= 3+6+9+12) 이 되어 10만큼 부족하므로 10을 return 합니다.

다음과 같은 예시를 보여주고있기때문에 카운트만큼 반복하는 수를 만들고 반복할때마다 price 값과 곱하여 그 값은 누적합니다.

누적한 금액과 필요한 금액을 빼서 최종 금액을 양수를 위해서 -1을 곱해줘서 리턴 합니다.

func solution(_ price:Int, _ money:Int, _ count:Int) -> Int64{
    
    let array = Array(1...count)
    let worldPrice = array.map {
        price * $0
    }.reduce(0, {$1 + $0})
    
    let result = money - worldPrice
    
    if result > 0 {
        return 0
    }
    
    return Int64(result * -1)
}

 

https://programmers.co.kr/learn/courses/30/lessons/82612

 

코딩테스트 연습 - 1주차_부족한 금액 계산하기

새로 생긴 놀이기구는 인기가 매우 많아 줄이 끊이질 않습니다. 이 놀이기구의 원래 이용료는 price원 인데, 놀이기구를 N 번 째 이용한다면 원래 이용료의 N배를 받기로 하였습니다. 즉, 처음 이

programmers.co.kr

 

'Algorithm' 카테고리의 다른 글

Algorithm(Swift) - 숫자 문자열과 영단어  (0) 2021.09.22
Algorithm(Swift) - 신규 아이디 추천  (0) 2021.09.21
Algorithm(Swift) - H-Index  (0) 2021.08.28
Algorithm(Swift) - 가장 큰 수  (0) 2021.08.27
Algorithm(Swift) - 모의고사  (0) 2021.08.27