[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] : ๋ฉ€๋ฆฌ๋›ฐ๊ธฐ

2025. 7. 13. 16:51ยท๐Ÿ“š ๋ฐฑ์ค€
728x90
๋ฐ˜์‘ํ˜•

๋ฌธ์ œ

https://school.programmers.co.kr/learn/courses/30/lessons/12914

ํšจ์ง„์ด๋Š” ๋ฉ€๋ฆฌ ๋›ฐ๊ธฐ๋ฅผ ์—ฐ์Šตํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํšจ์ง„์ด๋Š” ํ•œ๋ฒˆ์— 1์นธ, ๋˜๋Š” 2์นธ์„ ๋›ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์นธ์ด ์ด 4๊ฐœ ์žˆ์„ ๋•Œ, ํšจ์ง„์ด๋Š”
(1์นธ, 1์นธ, 1์นธ, 1์นธ)
(1์นธ, 2์นธ, 1์นธ)
(1์นธ, 1์นธ, 2์นธ)
(2์นธ, 1์นธ, 1์นธ)
(2์นธ, 2์นธ)
์˜ 5๊ฐ€์ง€ ๋ฐฉ๋ฒ•์œผ๋กœ ๋งจ ๋ ์นธ์— ๋„๋‹ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฉ€๋ฆฌ๋›ฐ๊ธฐ์— ์‚ฌ์šฉ๋  ์นธ์˜ ์ˆ˜ n์ด ์ฃผ์–ด์งˆ ๋•Œ, ํšจ์ง„์ด๊ฐ€ ๋์— ๋„๋‹ฌํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ๋ช‡ ๊ฐ€์ง€์ธ์ง€ ์•Œ์•„๋‚ด, ์—ฌ๊ธฐ์— 1234567๋ฅผ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๋ฅผ ๋ฆฌํ„ดํ•˜๋Š” ํ•จ์ˆ˜, solution์„ ์™„์„ฑํ•˜์„ธ์š”. ์˜ˆ๋ฅผ ๋“ค์–ด 4๊ฐ€ ์ž…๋ ฅ๋œ๋‹ค๋ฉด, 5๋ฅผ returnํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

 

์ž…์ถœ๋ ฅ ์˜ˆ

 

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

์ž…์ถœ๋ ฅ ์˜ˆ #1
์œ„์—์„œ ์„ค๋ช…ํ•œ ๋‚ด์šฉ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ž…์ถœ๋ ฅ ์˜ˆ #2
(2์นธ, 1์นธ)
(1์นธ, 2์นธ)
(1์นธ, 1์นธ, 1์นธ)
์ด 3๊ฐ€์ง€ ๋ฐฉ๋ฒ•์œผ๋กœ ๋ฉ€๋ฆฌ ๋›ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

ํ’€์ด

์œ„ ๋ฌธ์ œ๋Š” DP๋ฅผ ์‚ฌ์šฉํ•ด์„œ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค.

๋จผ์ €, 1๊ณผ 2๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ•ฉ์ด n์ด ๋˜๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๊ตฌํ•˜๊ณ 

๊ทธ ๊ฐœ์ˆ˜์—์„œ 1234567๋ฅผ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋ฉด ๋œ๋‹ค.

 

1. 1๊ณผ 2๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ•ฉ์ด n์ด ๋˜๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜ ๊ตฌํ•˜๊ธฐ

def count_combinations(n):
    dp = [0] * (n + 1)   # dp[i]๋Š” ํ•ฉ์ด i๊ฐ€ ๋˜๋Š” ์ˆœ์—ด์˜ ์ˆ˜
    dp[0] = 1            # ํ•ฉ์ด 0์ด ๋˜๋Š” ๋ฐฉ๋ฒ•์€ "์•„๋ฌด๊ฒƒ๋„ ์„ ํƒํ•˜์ง€ ์•Š๊ธฐ" 1๊ฐ€์ง€

    for i in range(1, n + 1):           # i๋Š” ํ˜„์žฌ ๋งŒ๋“ค๊ณ  ์‹ถ์€ ๋ชฉํ‘œ ํ•ฉ
        for num in [1, 2]:              # num์€ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ˆซ์ž (1 ๋˜๋Š” 2)
            if i - num >= 0:            # ์Œ์ˆ˜๊ฐ€ ๋˜๋ฉด ์•ˆ ๋˜๋‹ˆ๊นŒ ํ™•์ธ
                dp[i] += dp[i - num]    # ์ด์ „ ๊ฒฝ์šฐ์— num์„ ๋ถ™์—ฌ์„œ ํ˜„์žฌ ํ•ฉ ๋งŒ๋“ค๊ธฐ

    return dp[n]  # ์ตœ์ข…์ ์œผ๋กœ ํ•ฉ์ด n์ด ๋˜๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜

์ด๋ ‡๊ฒŒ ํ•˜๋ฉด, 1๊ณผ 2๋ฅผ ์‚ฌ์šฉํ•ด ํ•ฉ์ด n์ด ๋˜๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค.

 

2. 1234567์—์„œ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€

print(count_combinations(n) % 1234567)

์ด๋ ‡๊ฒŒ ๊ตฌํ•œ ๊ฐœ์ˆ˜์—์„œ 1234567์„ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๋ฅผ ๊ตฌํ•˜๋ฉด ๋œ๋‹ค.

 

 

์ •๋‹ต

def solution(n):
    return count_combinations(n) % 1234567

def count_combinations(n):
    dp = [0] * (n + 1)
    dp[0] = 1
    for i in range(1, n + 1):
        for num in [1, 2]:
            if i - num >= 0:
                dp[i] += dp[i - num]
    return dp[n]

 

DP ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ๊ถ๊ธˆํ•˜๋‹ค๋ฉด ์•„๋ž˜ ๊ธ€์„ ์ฐธ๊ณ ํ•ด์ฃผ์„ธ์š”.

https://haram22.tistory.com/95

728x90
๋ฐ˜์‘ํ˜•

'๐Ÿ“š ๋ฐฑ์ค€' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] : [1์ฐจ] ๋น„๋ฐ€์ง€๋„  (0) 2025.07.16
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] : ์—ฐ์† ๋ถ€๋ถ„ ์ˆ˜์—ด ํ•ฉ์˜ ๊ฐœ์ˆ˜  (3) 2025.07.14
[DP] ํŒŒ์ด์ฌ์œผ๋กœ Dynamic Programming ์ •๋ณตํ•˜๊ธฐ  (0) 2025.07.13
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค : ๊ทค ๊ณ ๋ฅด๊ธฐ  (0) 2025.06.28
๋ฐฑ์ค€ 17219: ๋น„๋ฐ€๋ฒˆํ˜ธ ์ฐพ๊ธฐ  (0) 2025.05.13
'๐Ÿ“š ๋ฐฑ์ค€' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] : [1์ฐจ] ๋น„๋ฐ€์ง€๋„
  • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] : ์—ฐ์† ๋ถ€๋ถ„ ์ˆ˜์—ด ํ•ฉ์˜ ๊ฐœ์ˆ˜
  • [DP] ํŒŒ์ด์ฌ์œผ๋กœ Dynamic Programming ์ •๋ณตํ•˜๊ธฐ
  • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค : ๊ทค ๊ณ ๋ฅด๊ธฐ
coram22
coram22
  • coram22
    ram2 ๐Ÿš—
    coram22
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (86)
      • ๐Ÿ’ง flutter (22)
      • ๐ŸŽ iOS (18)
      • ๐Ÿฉต CosPro (4)
        • python 2๊ธ‰ (4)
      • ๐Ÿˆ‍โฌ› git (3)
      • ๐Ÿ–ฅ๏ธ react (6)
      • ๐Ÿพ OS (1)
      • ๐Ÿ›œ ์ปดํ“จํ„ฐ ๋„คํŠธ์›Œํฌ (6)
      • ๐ŸŒƒ computer vision (6)
      • ๐Ÿ“š ๋ฐฑ์ค€ (11)
      • ๐Ÿฃ My Story (1)
      • ๐Ÿ’ป else (8)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ๐Ÿˆโ€โฌ› github ๐Ÿˆโ€โฌ›
    • ํ™ˆ
    • ํƒœ๊ทธ
    • ๋ฐฉ๋ช…๋ก
  • ๋งํฌ

    • ๐Ÿฑ Github ๐Ÿฑ
  • ๊ณต์ง€์‚ฌํ•ญ

  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    ๊ณต์‹๋ฌธ์„œ
    dart
    SwiftUI
    ์ •๋‹ต
    Computer Vision
    Swift
    Python
    React
    ์ปด๋„ค
    IOS
    OpenCV
    FLUTTER
    UIKit
    Git
    2๊ธ‰
    ํ‹ฐ์Šคํ† ๋ฆฌ์ฑŒ๋ฆฐ์ง€
    ์˜ค๋ธ”์™„
    ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
    ์ค‘๋„ํœดํ•™
    Xcode
  • ์ตœ๊ทผ ๋Œ“๊ธ€

  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
coram22
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] : ๋ฉ€๋ฆฌ๋›ฐ๊ธฐ
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”