본문 바로가기

Coding Test/Programmers

[프로그래머스/JavaScript] 코딩 테스트 풀이 (문제 81 - 치킨 쿠폰)

728x90

 

# 문제

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



# 답안

// 1. 입력: 정수 chicken -> 시켜먹은 치킨의 수
// 2. 출력: 최대 서비스 치킨의 수 

// sum = 0
// sum += Math.floor(1081 / 10) = 108
// chicken = Math.floor((1081 / 10) + (1081 % 10)) -> 현재 쿠폰 개수 (109)

// sum += Math.floor(109 / 10) = 10
// chicken = Math.floor((109 / 10) + (109 % 10)) -> 현재 쿠폰 개수 (19) 

// sum += Math.floor(19 / 10) = 1 
// chicken = Math.floor((19 / 10) + (19 % 10)) -> 현재 쿠폰 개수 (10) 

// sum += Math.floor(10 / 10) = 1


function solution(chicken) {
  let sum = 0;
  while (chicken > 9){
      sum += Math.floor(chicken / 10)
      chicken = Math.floor((chicken / 10) + (chicken % 10))  
  }
    return sum
}
728x90