Dynamic Programming 2

이것이 코딩테스트다 32 정수 삼각형

문제 링크 https://www.acmicpc.net/problem/1932 1932번: 정수 삼각형 첫째 줄에 삼각형의 크기 n(1 ≤ n ≤ 500)이 주어지고, 둘째 줄부터 n+1번째 줄까지 정수 삼각형이 주어진다. www.acmicpc.net Test Case 문제 풀이 우선 입력은 줄구분 할필요 없이 그냥 list 한줄씩 입력을 받으면 된다. 그리고 for문을 통해서 각 케이스를 나눈 뒤, index 값을 고려해서 반복문을 만들어준다 i 의 범위 1~n, j 의 범위 0~i+1 인것은 각 인덱스의 최소,최대값을 생각하면 쉽게 범위를 잡을 수 있다. 마지막으로 정답 출력은 마지막줄에서 제일 큰 dp 배열의 값이 되므로 dp[n-1]의 값을 출력하면 된다. 여태까지 알고리즘 공부하고 풀이하던 방식을..

Develop/algorithm 2021.12.24

이것이 코딩테스트다 31 금광

문제 링크 n × m 크기의 금광이 있다. 금광은 1 × 1 크기의 칸으로 나누어져 있으며, 각 칸은 특정한 크기의 금이 들어 있다. 채굴자는 첫 번째 열부터 출발하여 금을 캐기 시작한다. 맨 처음에는 첫 번째 열의 어느 행에서든 출발할 수 있다. 이후에 m - 1번에 걸쳐서 매번 오른쪽 위, 오른쪽, 오른쪽 아래 3가지 중 하나의 위치로 이동해야 한다. 결과적으로 채굴자가 얻을 수 있는 금의 최대 크기를 출력하는 프로그램을 작성하라 Test Case 입력 2 3 4 1 3 3 2 2 1 4 1 0 6 4 7 4 4 1 3 1 5 2 2 4 1 5 0 2 3 0 6 1 2 출력 19 16 문제 풀이 m 개 간격으로 입력을 받은 list를 나누서 dp 배열에 저장한다. 그 뒤에 반복문으로 각 세로줄을 검토..

Develop/algorithm 2021.12.15