[백준/Python] 9095. 1, 2, 3 더하기

2024. 12. 26. 18:30·CODING_TEST

※ 문제

https://www.acmicpc.net/problem/9095

※ 문제 유형

다이나믹 프로그래밍 (SILVER_3)

※ 나의 풀이

  • DP로 문제 해결
    • 4를 1, 2, 3으로 표현하는 방법 7가지
      • 1 + 1 + 1 + 1
      • 1 + 1 + 2
      • 1 + 2 + 1
      • 2 + 1 + 1
      • 2 + 2
      • 1 + 3
      • 3 + 1
    • 5를 1, 2, 3으로 표현하는 방법
      • 4에서 1을 더하는 방법(7가지)
      • 3에서 2를 더하는방법
      • 2에서 3을 더하는 방법
    • 6을 1, 2, 3으로 표현하는 방법
      • 5에서 1을 더하는 방법
      • 4에서 2를 더하는 방법
      • 3에서 3을 더하는 방법
  • dp[N] = dp[N-1] + dp[N-2] + dp[N-3]
import sys

T = int(sys.stdin.readline())

case = []
for i in range(T):
    case.append(int(sys.stdin.readline()))

# N-1 에서 1 더하기 -> N-1 을 만드는 경우의 수와 동일 == dp[N-1]
# N-2 에서 2 더하기 -> N-2 을 만드는 경우의 수와 동일 == dp[N-2]
# N-3 에서 3 더하기 -> N-3 을 만드는 경우의 수와 동일 == dp[N-3]

dp = [0] * (max(case) + 1)

for i in range(1, max(case) + 1):
    if i == 1:
        dp[i] = 1
    elif i == 2:
        dp[i] = 2
    elif i == 3:
        dp[i] = 4
    else:
        dp[i] = dp[i - 3] + dp[i - 2] + dp[i - 1]

for n in case:
    print(dp[n])

 

'CODING_TEST' 카테고리의 다른 글

[백준/Python] 2805. 나무 자르기  (0) 2024.12.30
[백준/Python] 14916. 거스름돈  (0) 2024.12.29
[백준/Python] 1463. 1로 만들기  (0) 2024.12.26
[백준/Python] 5525. IOIOI  (0) 2024.12.26
[프로그래머스/Python] 피보나치 수  (0) 2024.12.25
'CODING_TEST' 카테고리의 다른 글
  • [백준/Python] 2805. 나무 자르기
  • [백준/Python] 14916. 거스름돈
  • [백준/Python] 1463. 1로 만들기
  • [백준/Python] 5525. IOIOI
YAHO_STUDY
YAHO_STUDY
DATA&AI_study.zip
  • YAHO_STUDY
    YAHO_CODE
    YAHO_STUDY
  • 전체
    오늘
    어제
    • 분류 전체보기 (57)
      • Paper Review (0)
      • SQL (16)
      • CODING_TEST (21)
      • Time Series (0)
      • DL (20)
        • NLP (5)
        • LLM&RAG (15)
        • Recommender System (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Lora
    coding_test
    Programmers
    한 권으로 끝내는 실전 llm 파인튜닝
    DP
    PEFT
    hash
    RNN
    boj
    pagedattention
    MySQL
    fine-tuning
    qlora
    SQL
    prompt-tuning
    quantization
    Gemma
    graph
    runpod
    양자화
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
YAHO_STUDY
[백준/Python] 9095. 1, 2, 3 더하기
상단으로

티스토리툴바