본문 바로가기

다이나믹 프로그래밍4

1932) 정수 삼각형 (C++) 출처 https://www.acmicpc.net/problem/1932 1932번: 정수 삼각형 첫째 줄에 삼각형의 크기 n(1 ≤ n ≤ 500)이 주어지고, 둘째 줄부터 n+1번째 줄까지 정수 삼각형이 주어진다. www.acmicpc.net 내 풀이 #include using namespace std; int triangle[501][501]; int N = 0;//삼각형의 크기 int main() { cin >> N; for (int i = 0; i > triangle[i][j]; } } // 윗값부터 더하기 위해 1부터 시작 for (int i = 1; i < N; i++) { for (int j = 0; .. 2022. 4. 23.
9461) 파도반 수열 (C++) 출처 https://www.acmicpc.net/problem/9461 9461번: 파도반 수열 오른쪽 그림과 같이 삼각형이 나선 모양으로 놓여져 있다. 첫 삼각형은 정삼각형으로 변의 길이는 1이다. 그 다음에는 다음과 같은 과정으로 정삼각형을 계속 추가한다. 나선에서 가장 긴 변의 www.acmicpc.net 내 풀이 #include using namespace std; long long N[101];//파도반 수열 int T = 0; //테스트 케이스 int P = 0; //테스트 케이스안에 입력받을 파도반 수열 N[P] int main() { N[1] = 1; N[2] = 1; N[3] = 1; //파도반 수열을 확인해보면 N[i] = N[i - 2] + N[i - 3] 이 성립함 for (int .. 2022. 4. 20.
9184) 신나는 함수 실행 (C++) 출처 https://www.acmicpc.net/problem/9184 9184번: 신나는 함수 실행 입력은 세 정수 a, b, c로 이루어져 있으며, 한 줄에 하나씩 주어진다. 입력의 마지막은 -1 -1 -1로 나타내며, 세 정수가 모두 -1인 경우는 입력의 마지막을 제외하면 없다. www.acmicpc.net 내 풀이 #include using namespace std; int dp[51][51][51]; int main() { for (int i = 0; i b >> c; if (a == -1 && b == -1 && c == -1)break; if (.. 2022. 4. 18.
1003) 피보나치 함수 (C++) 출처 https://www.acmicpc.net/problem/1003 1003번: 피보나치 함수 각 테스트 케이스마다 0이 출력되는 횟수와 1이 출력되는 횟수를 공백으로 구분해서 출력한다. www.acmicpc.net 내 풀이 #include using namespace std; int T = 0; int dp_0[41];//피보나치 0 int dp_1[41];//피보나치 1 int main() { dp_0[0] = 1; dp_0[1] = 0; dp_1[0] = 0; dp_1[1] = 1; for (int i = 2; i > T; for (int i = 0; i > x; cout 2022. 4. 17.