๐Ÿ”๐Ÿ— [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์น˜ํ‚จ ์ฟ ํฐ

Chobbyยท2022๋…„ 10์›” 23์ผ
2

Programmers

๋ชฉ๋ก ๋ณด๊ธฐ
140/349

๐Ÿงก๋ฌธ์ œ ์„ค๋ช…

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


๐Ÿ’›์ œํ•œ์‚ฌํ•ญ

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

๐Ÿ’š์ž…์ถœ๋ ฅ ์˜ˆ

chickenresult
10011
1,081120

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

์ž…์ถœ๋ ฅ ์˜ˆ #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 coupon = chicken
    // ์„œ๋น„์Šค ๋ฐ›์€ ์น˜ํ‚จ ์ˆ˜
    let service = 0
    // ์ฟ ํฐ์ด 10๊ฐœ ์ด์ƒ์ด๋ผ๋ฉด
    while(coupon >= 10) {
        // ์ฟ ํฐ์„ 10์œผ๋กœ ๋‚˜๋ˆˆ ๋ชซ๋งŒํผ ์„œ๋น„์Šค ์น˜ํ‚จ ์ถ”๊ฐ€
        service+=coupon/10 << 0
        // ๋‚จ์€ ์ฟ ํฐ = coupon%10, ์„œ๋น„์Šค๋กœ ์ฃผ๋ฌธํ•œ ์น˜ํ‚จ์˜ ์ฟ ํฐ ์ˆ˜ = coupon/10
        coupon = coupon%10 + coupon/10 << 0
    }
    return service
}
profile
๋‚ด ์ง€์‹์„ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋Š” ๋Œ€๋‹ดํ•จ

1๊ฐœ์˜ ๋Œ“๊ธ€

comment-user-thumbnail
2023๋…„ 3์›” 11์ผ

<< 0 ์ด๋ถ€๋ถ„ ์„ค๋ช… ํ•ด์ฃผ์‹ค ์ˆ˜ ์žˆ์„๊นŒ์š”? ๊ฒฐ๊ณผ์ ์œผ๋กœ ์†Œ์ˆ˜์  ๋ถ€๋ถ„์„ ์—†์• ์„œ ๊ณ„์‚ฐํ•˜๋ ค๊ณ  ํ•˜์‹œ๋Š”๊ฒƒ ๊ฐ™์€๋ฐ ์ด ์‹œํ”„ํŠธ ์—ฐ์‚ฐ์ž๊ฐ€ 0 ๊ฐ’์„ ์ฃผ์—ˆ์„ ๋•Œ ์–ด๋–ค์‹์œผ๋กœ ์ ์šฉ๋˜๋Š”์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค.

๋‹ต๊ธ€ ๋‹ฌ๊ธฐ