본문 바로가기
알고리즘/프로그래머스

[C++] 치킨 쿠폰

by parkkingcar 2023. 5. 23.

 

 

치킨 쿠폰

 

프로그래머스 치킨은 치킨을 시켜먹으면 한 마리당 쿠폰을 한 장 발급합니다. 쿠폰을 열 장 모으면 치킨을 한 마리 서비스로 받을 수 있고, 서비스 치킨에도 쿠폰이 발급됩니다. 시켜먹은 치킨의 수 chicken이 매개변수로 주어질 때 받을 수 있는 최대 서비스 치킨의 수를 return하도록 solution 함수를 완성해주세요.

 

 

100마리를 주문하면 쿠폰이 100장 발급되므로 서비스 치킨 10마리를 주문할 수 있습니다. 10마리를 주문하면 쿠폰이 10장 발급되므로 서비스 치킨 1마리를 주문할 수 있습니다.

 

결국 100마리를 주문하면 총 100 + 10 + 1 마리를 주문하기 때문에  쿠폰으로 10마리가 되는 경우도 고려해야 합니다.

 

 

#include <string>
#include <vector>

using namespace std;

int solution(int chicken) {
    int cou = 0, service = 0, tmp = 0;
    tmp = chicken;
    while(tmp){
        service += tmp / 10;
        cou += tmp % 10;
        tmp /= 10;
        if(cou >= 10){
            service += cou / 10;
            cou += cou / 10;
            cou %= 10;
        }
    }
    return service;
}

'알고리즘 > 프로그래머스' 카테고리의 다른 글

[C++] 평행  (0) 2023.05.25
[C++] 연속된 수의 합  (0) 2023.05.24
[C++] 다음에 올 숫자  (0) 2023.05.23
[C++] 숫자 문자열과 영단어  (0) 2023.05.23
[C++] 유한소수 판별하기  (0) 2023.05.22

댓글