[백준] 9095번: 1, 2, 3 더하기

2024. 9. 15. 14:36·PS

 

 


 

문제

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

 

 

 

 

 

실행 결과

 

 

 

 

 

코드(c++)

#include <iostream>
using namespace std;

int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(nullptr);
  cout.tie(nullptr);

  int t;
  cin >> t;

  int dp[12] = {0};
  dp[1] = 1;
  dp[2] = 2;
  dp[3] = 4;

  while (t--) {
    int n;
    cin >> n;

    for (int i = 4; i <= n; i++) {
      dp[i] = dp[i - 3] + dp[i - 2] + dp[i - 1]; // 점화식
    }

    cout << dp[n] << "\n";
  }

  return 0;
}

 

 

 

 

코드 설명

11까지라고 주어졌으므로 미리 12의 크기를 가진 배열 dp를 선언한다. (0~11)

1, 2, 3 각각의 숫자에 대하여 1,2,3으로 만들 수 있는 합의 가짓수를 구하고, 배열 dp에 저장한다.

 

1 = 1 => 1개

따라서 dp[1]=1

 

2 = 1+1 = 1 => 2개

따라서 dp[2]=2

 

3 = 1+1+1 = 1+2 =2+1=3 => 4개

따라서 dp[4]=2

 

4부터 11까지는 1, 2, 3의 가짓수만 이용해서 구하면 되므로 점화식을 세워서 계산한다!

아주 기초적인 다이나믹 프로그래밍 문제..!

 


 

 

저작자표시 (새창열림)

'PS' 카테고리의 다른 글

[백준] 28445번: 알록달록 앵무새  (0) 2024.09.16
[백준] 18110번: solved.ac  (0) 2024.09.15
[백준] 1463번: 1로 만들기  (0) 2024.09.13
[백준] 1602번: 나는야 포켓몬 마스터 이다솜  (2) 2024.09.10
[코드트리] 정수 명령 처리 5  (0) 2024.09.07
'PS' 카테고리의 다른 글
  • [백준] 28445번: 알록달록 앵무새
  • [백준] 18110번: solved.ac
  • [백준] 1463번: 1로 만들기
  • [백준] 1602번: 나는야 포켓몬 마스터 이다솜
abyss-s
abyss-s
프론트엔드 공부합니다.
  • abyss-s
    abyss-s의 블로그입니다.
    abyss-s
  • 전체
    오늘
    어제
    • 분류 전체보기 (188)
      • Web (16)
        • JavaScript (6)
        • TypeScript (1)
        • React (5)
        • Vue (0)
        • Storybook (1)
        • Next.js (1)
      • Backend & Infra (8)
        • Database (3)
        • Node.js (2)
        • SpringBoot (1)
      • PS (71)
      • CS (30)
        • OS (13)
        • Structure & Algorithm (5)
        • Network (10)
        • 정보처리기사 (2)
      • Language (18)
        • OOP (1)
        • JAVA (13)
        • C++ (4)
      • Activities (12)
        • 멋쟁이 사자처럼 (2)
        • OSSCA (3)
        • LG U+ URECA (3)
        • Project (2)
      • AI (0)
      • Git & Github (5)
      • Notion (1)
      • IT (4)
      • Statistics (11)
      • Book (4)
      • Diary (1)
      • Game (1)
  • 블로그 메뉴

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

    • 깃허브
    • 백준
    • 트위터
  • 공지사항

    • abyss-s의 티스토리에 오신 것을 환영합니다.
  • 인기 글

  • 태그

    자바스크립트
    백준
    자바기반응용프로그래밍
    JavaScript
    파이썬
    github
    코드트리
    그리디
    DP
    BAEKJOON
    Python
    React
    OS
    Java
    네트워크
    통계학
    생활코딩
    운영체제
    C++
    BFS
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
abyss-s
[백준] 9095번: 1, 2, 3 더하기
상단으로

티스토리툴바