[백준] 2579번: 계단 오르기
·
PS
문제https://www.acmicpc.net/problem/2579 개념DP(다이나믹 프로그래밍)  실행 결과     구현 코드(c++)#include #include #include using namespace std;int main() { ios_base::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr); int n; cin >> n; vector v(n + 1); // 계단 별 점수 배열 for (int i = 1; i > v[i]; } vector dp(n + 1, 0); // 총 점수 배열 dp[1] = v[1]; dp[2] = v[1] + v[2]; dp[3] = max(v[1] + v[3], v[2] + v[3..
[백준] 9095번: 1, 2, 3 더하기
·
PS
문제https://www.acmicpc.net/problem/9095     실행 결과     코드(c++)#include 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     코드 설명11까지라고 주어졌으므로 미리 12의 크기를 가진 배열 dp를 선언한다. (0~11)1, 2, 3 각각의 숫자에 대하여 1,2,3으로 만들 수 ..
[백준] 1463번: 1로 만들기
·
PS
문제https://www.acmicpc.net/problem/1463    실행 결과     코드(c++)#include #include #include using namespace std;int main() { // 실행 시간 줄이기 ios::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr); int n; cin >> n; // 숫자 i를 1로 만드는데 필요한 최소 연산횟수를 저장하는 테이블 선언 및 초기화 vector dp(n + 1, 0); // 첫번째는 연산 필요 없으므로 0으로 설정 dp[1] = 0; for (int i = 2; i     코드 설명 초기에 잘못 생각했던 부분은 연산의 순서였다.dp 개념을 몰랐을때는 ..