[C++] 백준 9465번: 스티커

2023. 1. 10. 22:10·problem solving/백준

🖍 문제

9465번: 스티커

 

9465번: 스티커

첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스의 첫째 줄에는 n (1 ≤ n ≤ 100,000)이 주어진다. 다음 두 줄에는 n개의 정수가 주어지며, 각 정수는 그 위치에 해당하는 스티커의

www.acmicpc.net

 

📄 풀이

이 문제를 바로 풀 수 있는 사람이 있을까?

풀 때마다 암기력으로 극복하는 중인데 이게 맞나 싶다.

💾 소스

#include <iostream>
#include <algorithm>

int main()
{
	int T; std::cin >> T;
	int sticker[2][100001];

	int dp[2][100001];
	dp[0][0] = 0;
	dp[1][0] = 0;

	while (T--)
	{
		int n; std::cin >> n;
		for (int i = 1; i <= n; i++)
			std::cin >> sticker[0][i];
		for (int i = 1; i <= n; i++)
			std::cin >> sticker[1][i];
        
		dp[0][1] = sticker[0][1];
		dp[1][1] = sticker[1][1];

		for (int i = 2; i <= n; i++)
		{
			dp[0][i] = std::max(dp[1][i - 1], dp[1][i - 2]) + sticker[0][i];
			dp[1][i] = std::max(dp[0][i - 1], dp[0][i - 2]) + sticker[1][i];
		}

		std::cout <<max(dp[0][n], dp[1][n])<< std::endl;

	}//T
}//main
저작자표시 비영리 변경금지 (새창열림)
'problem solving/백준' 카테고리의 다른 글
  • [C++] 백준 1699번: 제곱수의 합
  • [C++] 백준 2156번: 포도주 시식
  • [C++] 백준 2865번: 나는 위대한 슈퍼스타K (소수점 출력 방법)
  • [C++] 백준 14891번: 톱니바퀴
u1qns
u1qns
http://github.com/u1qns
  • u1qns
    개발 블로그
    u1qns
  • 전체
    오늘
    어제
    • 분류 전체보기 (173) N
      • 회고 (1)
      • programming (17)
        • 개념 정리 (6)
        • CI CD (1)
        • 트러블 슈팅 (0)
        • 환경설정 및 팁 (7)
      • problem solving (155) N
        • 개념 정리 (3)
        • 백준 (129) N
        • SWEA (15)
        • 프로그래머스 (4)
  • 블로그 메뉴

    • 홈
    • 방명록
  • 링크

    • 깃허브
  • 공지사항

  • 인기 글

  • 태그

    HELLOSSAFY
    SWEA
    삼성청년SW아카데미
    POW
    완전탐색
    미해결
    DP
    백준
    boj
    그리디
    C++
    BFS
    cpp
    SSAFY
    투포인터
    SSAFY수료식
    cmath
    되추적
    구현
    DFS
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
u1qns
[C++] 백준 9465번: 스티커
상단으로

티스토리툴바