Daniel: The Dev Story
Daniel: The Dev Story
    • 홈
  • 분류 전체보기
    • 프로젝트
    • Spring
    • NodeJS
    • Basics
    • Git
    • DB
    • Algorithm
    • Error
    • Private
      • Database
      • Tip
  • 글쓰기
  • 관리자
  • myoskin

      [백준] 11722: 가장 긴 감소하는 부분 수열 - Java (DP)

      목 차 문제 접근 방식 풀이 문제 접근 방식 가장 긴 증가하는 부분 수열에서는 Bottom-up 방식이 합리적이었다. 그래서 감소하는 부분 수열에서는 반대로 Top-down 방식으로 해서 같은 방식으로 풀어주었다. 포인터 i 와 포인터 j 를 가진다. 둘의 초기값은 arr.length - 1 이다. 그리고 i를 기준으로 하나씩 확인하면서 만약 i 보다 작다면 dp[i] = dp[j] + 1; 을 해준다. 우리는 j를 통해서 반복적으로 확인을 해야하다 보니 Math.max() 로 감싸준다. 점화식이다. if(arr[i] > arr[j]){ dp[i] = Math.max(dp[j] + 1, dp[i]); } 조건문은 코드마다 달라질 수 있겠지만 그 안에 점화식은 큰 변화는 없을 거다. 풀이 package s..

      Algorithm 2024.01.22

    1
    Daniel: The Dev Story

    찾기

    공지

    최근 글

    인기글

    최근 댓글

    캘린더

      1 / 2024
      일 월 화 수 목 금 토
      1 2 3 4 5 6
      7 8 9 10 11 12 13
      14 15 16 17 18 19 20
      21 22 23 24 25 26 27
      28 29 30 31

    글 보관함

    태그

      코딩AlgorithmBOJ자바MYSQLjava백준git타입스크립트알고리즘

    즐겨찾기

    방문자 수

    • Today
    • Yesterday
    • Total
    myoskin

    티스토리툴바