(BOJ)기초(브루트포스)(4) 1,2,3더하기 9095

  1. 1,2,3더하기

4. 1,2,3 더하기

  • 정수 4를 1,2,3의 합으로 나타내는 방법은 7가지
  • 정수 n이 주어질 때, n을 1,2,3의 합으로 나타내는 방법의 수를 구하는 프로그램을 작성하시오

  • DP로 풀릴 것 같은 문제다.
  • 1은 1개
  • 2은 2개
  • 3은 4개
  • 5는 13개
  • 6은 24개
from sys import stdin
input = stdin.readline

arr = [0, 1, 2, 4, 0, 0, 0, 0, 0, 0, 0, 0]  # idx 0은 그냥 계산을 편하게 하기 위해 넣어줌

for i in range(4, 12):
    arr[i] = arr[i-1] + arr[i-2] + arr[i-3]

for _ in range(int(input())):
    T = int(input())
    print(arr[T])


참고자료

코드플러스

0%