본문 바로가기

DP10

[백준 Gold 4] 21923 곡예 비행 - Java 문제링크 : https://www.acmicpc.net/problem/21923 21923번: 곡예 비행 동헌이는 모형 비행기 조종 대회에 참가하였다. 이 대회에서는 격자 모양의 공간에서 모형 비행기를 조종하여 얻는 비행 점수로 순위를 매긴다. 격자의 각 칸에는 점수가 부여되어 있고, 비행 www.acmicpc.net 접근 과정 : 상승 비행과 하강 비행을 따로 관리 (상승 구간과 하강 구간이 중복되는 칸이 1~N개 있다!!!) 상승 비행이 끝나는 칸 == 하강 비행이 시작하는 칸 비행 점수 = (r,c)까지 상승한 경우 + (r,c)부터 하강하는 경우 DP로 하강 비행을 탐색하고 하강 비행 탐색 로직 내부에서 상승 비행 탐색을 수행 하강비행 = (r,c)까지 상승비행 + (r,c)부터 하강비행 OR (.. 2021. 12. 16.
[백준 Silver 2] 11722 가장 긴 감소하는 부분 수열 - Java 문제링크 : https://www.acmicpc.net/problem/11722 11722번: 가장 긴 감소하는 부분 수열 수열 A가 주어졌을 때, 가장 긴 감소하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 30, 10, 20, 20, 10} 인 경우에 가장 긴 감소하는 부분 수열은 A = {10, 30, 10, 20, 20, 10} www.acmicpc.net 접근 과정 : 수열 A를 모두 입력 받은 후에, 감소 수열 체크 dp[] 는 해당 인덱스까지의 확인했을 때, 가장 긴 감소 수열의 크기를 의미 수열 A를 순회하면서, 해당 인덱스(i) 앞 부분의 수(j)를 모두 체크 만약 앞 부분의 dp[j]가 현재 인덱스의 dp[i]보다 작지 않고, A[j] 가 A[i] 보다.. 2021. 12. 16.