반응형
반응형

시간 날때마다 알고리즘 문제를 풀어볼까 합니다! 실무에 중요한 그리디 유형부터 진행할 예정입니다!

 

var amount = Int(readLine()!)!
var bag = 0

while(amount >= 0) {
    if amount % 5 == 0 {
        bag += amount / 5
        print(bag)
        break
    }
    bag += 1
    amount -= 3

    if 1..<3 ~= amount {
        print(-1)
        break
    }
}

while문을 사용하지 않고서는 도저히 쉽게 해결할 방법이 안떠올라 결국 while문으로 풀게 됬네요.

 

해설

그냥 최대한 단순하게 5로 나누어 떨어질 때 까지 3을 빼주며 1봉지씩 추가하는 방법입니다. while문 도중 3씩 빼고 있는데 남은 수가 1이나 2가 될 경우 -1을 출력합니다.

 

반응형

+ Recent posts