๐ŸŒ  ๋ฌธ์ œ

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์น˜ํ‚จ์€ ์น˜ํ‚จ์„ ์‹œ์ผœ๋จน์œผ๋ฉด ํ•œ ๋งˆ๋ฆฌ๋‹น ์ฟ ํฐ์„ ํ•œ ์žฅ ๋ฐœ๊ธ‰ํ•ฉ๋‹ˆ๋‹ค. ์ฟ ํฐ์„ ์—ด ์žฅ ๋ชจ์œผ๋ฉด ์น˜ํ‚จ์„ ํ•œ ๋งˆ๋ฆฌ ์„œ๋น„์Šค๋กœ ๋ฐ›์„ ์ˆ˜ ์žˆ๊ณ , ์„œ๋น„์Šค ์น˜ํ‚จ์—๋„ ์ฟ ํฐ์ด ๋ฐœ๊ธ‰๋ฉ๋‹ˆ๋‹ค. ์‹œ์ผœ๋จน์€ ์น˜ํ‚จ์˜ ์ˆ˜ chicken์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ ๋ฐ›์„ ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€ ์„œ๋น„์Šค ์น˜ํ‚จ์˜ ์ˆ˜๋ฅผ returnํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด์ฃผ์„ธ์š”.

๐ŸŒ  ์ œํ•œ์‚ฌํ•ญ

  • chicken์€ ์ •์ˆ˜์ž…๋‹ˆ๋‹ค.
  • 0 โ‰ค chicken โ‰ค 1,000,000

๐ŸŒ  ์ž…์ถœ๋ ฅ ์˜ˆ

chicken result
100 11
1,081 120

๐ŸŒ  ์ž…์ถœ๋ ฅ ์˜ˆ ์„ค๋ช…

์ž…์ถœ๋ ฅ ์˜ˆ #1

  • 100๋งˆ๋ฆฌ๋ฅผ ์ฃผ๋ฌธํ•˜๋ฉด ์ฟ ํฐ์ด 100์žฅ ๋ฐœ๊ธ‰๋˜๋ฏ€๋กœ ์„œ๋น„์Šค ์น˜ํ‚จ 10๋งˆ๋ฆฌ๋ฅผ ์ฃผ๋ฌธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • 10๋งˆ๋ฆฌ๋ฅผ ์ฃผ๋ฌธํ•˜๋ฉด ์ฟ ํฐ์ด 10์žฅ ๋ฐœ๊ธ‰๋˜๋ฏ€๋กœ ์„œ๋น„์Šค ์น˜ํ‚จ 1๋งˆ๋ฆฌ๋ฅผ ์ฃผ๋ฌธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋”ฐ๋ผ์„œ 10 + 1 = 11 ์„ returnํ•ฉ๋‹ˆ๋‹ค.

์ž…์ถœ๋ ฅ ์˜ˆ #2

  • 1081๋งˆ๋ฆฌ๋ฅผ ์ฃผ๋ฌธํ•˜๋ฉด ์ฟ ํฐ์ด 1081์žฅ ๋ฐœ๊ธ‰๋˜๋ฏ€๋กœ ์„œ๋น„์Šค ์น˜ํ‚จ 108๋งˆ๋ฆฌ๋ฅผ ์ฃผ๋ฌธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ฟ ํฐ์ด 1์žฅ ๋‚จ์Šต๋‹ˆ๋‹ค.
  • 108๋งˆ๋ฆฌ๋ฅผ ์ฃผ๋ฌธํ•˜๋ฉด ์ฟ ํฐ์ด 108์žฅ ๋ฐœ๊ธ‰๋˜๋ฏ€๋กœ ์„œ๋น„์Šค ์น˜ํ‚จ 10๋งˆ๋ฆฌ๋ฅผ ์ฃผ๋ฌธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ฟ ํฐ์ด 8์žฅ ๋‚จ์Šต๋‹ˆ๋‹ค.
  • 10๋งˆ๋ฆฌ๋ฅผ ์ฃผ๋ฌธํ•˜๋ฉด ์ฟ ํฐ์ด 10์žฅ ๋ฐœ๊ธ‰๋˜๋ฏ€๋กœ ์„œ๋น„์Šค ์น˜ํ‚จ 1๋งˆ๋ฆฌ๋ฅผ ์ฃผ๋ฌธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • 1๋งˆ๋ฆฌ๋ฅผ ์ฃผ๋ฌธํ•˜๋ฉด ์ฟ ํฐ์ด 1์žฅ ๋ฐœ๊ธ‰๋ฉ๋‹ˆ๋‹ค.
  • ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ์ฟ ํฐ์ด ์ด 10์žฅ์ด๋ฏ€๋กœ ์„œ๋น„์Šค ์น˜ํ‚จ 1๋งˆ๋ฆฌ๋ฅผ ์ถ”๊ฐ€๋กœ ์ฃผ๋ฌธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋”ฐ๋ผ์„œ 108 + 10 + 1 + 1 = 120 ์„ returnํ•ฉ๋‹ˆ๋‹ค.

๐Ÿงž ํ’€์ด

function solution(chicken) {
    let service = parseInt(chicken / 10);
    let coupon = chicken % 10;
    coupon += service;
    while (parseInt(coupon / 10) >= 1) {
        let new_service = parseInt(coupon / 10);
        service += new_service;
        coupon = coupon % 10;
        coupon += new_service;
    }
    return service;
}

+ Recent posts