[프로그래머스 C++] 스티커 모으기(2)
[프로그래머스 C++] 스티커 모으기(2)
https://school.programmers.co.kr/learn/courses/30/lessons/12971
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
해결전략
동적계획법 Dynamic Programming
정답코드
#include <iostream> #include <vector> using namespace std; int solution(vector<int> sticker){ int n = sticker.size(); vector<int> dp1(n); // 첫번째 선택O vector<int> dp2(n); // 첫번째 선택X dp1[0] = sticker[0]; dp1[1] = sticker[0]; dp2[1] = sticker[1]; for (int i = 2; i < n; i++) { dp1[i] = max(dp1[i - 2] + sticker[i], dp1[i - 1]); dp2[i] = max(dp2[i - 2] + sticker[i], dp2[i - 1]); if (i == n - 1) { // 첫번째 숫자를 선택한 dp1의 경우 마지막 수 선택 불가능 dp1[i] = max(dp1[i - 2], dp1[i - 1]); } } int answer = max(dp1[n - 1], dp2[n - 1]); return answer; }
'⭐ 코딩테스트 > 프로그래머스' 카테고리의 다른 글
[프로그래머스 C++] 후보키 (0) | 2024.07.22 |
---|---|
[프로그래머스 C++] 디스크 컨트롤러 (0) | 2024.07.19 |
[프로그래머스 C++] 숫자 게임 (0) | 2024.07.15 |
[프로그래머스 C++] 베스트앨범 (0) | 2024.07.09 |
[프로그래머스 C++] 최고의 집합 (0) | 2024.07.08 |
댓글
이 글 공유하기
다른 글
-
[프로그래머스 C++] 후보키
[프로그래머스 C++] 후보키
2024.07.22 -
[프로그래머스 C++] 디스크 컨트롤러
[프로그래머스 C++] 디스크 컨트롤러
2024.07.19 -
[프로그래머스 C++] 숫자 게임
[프로그래머스 C++] 숫자 게임
2024.07.15 -
[프로그래머스 C++] 베스트앨범
[프로그래머스 C++] 베스트앨범
2024.07.09
댓글을 사용할 수 없습니다.