티스토리

개발 공부
검색하기

블로그 홈

개발 공부

lu-ca.tistory.com/m

Rachel_ 님의 블로그입니다.

구독자
0
방명록 방문하기

주요 글 목록

  • [BOJ] 문제 2156 포도주 시식 (dp문제) 문제 이해 포도주가 1~N개 있을 때, 3개의 포도주를 연속해서 마시지 않는 가운데 가장 많이 마실 수 있는 포도주의 양을 구하는 것. 문제 풀이 n번째의 잔을 마시는 경우의 수와 ( ~~~ + n / ~~~ + n-2 + n) n번째의 잔을 마시지 않을 때의 경우의 수를 계산해서 ( ~~~~ + n-2 + n-1 ) 그 중에서 가장 큰 값을 찾는 식. 주의사항 Top-down 식으로 풀 때, recur 메소드의 if 구문식을 세울 때에는 dp[0]의 값도 0으로 제시해주어야 한다. 그렇기 않을 경우 dp[0] = 에도 arrays.fill 메소드로 인해 -1이 채워져있기 때문에 dp[2], dp[1]을 계산하는 recur(2), recur(1)을 건너뛴 채 dp[0]을 계산하는 recur 함수가 돌아서.. 공감수 0 댓글수 0 2022. 4. 2.
  • [BOJ] 문제 11057 오르막 수 (dp문제) 문제 이해 N 이라는 자릿수가 주어졌을 때, 가장 앞자리 수부터 ~ N 까지의 수가 오름차순으로 이루어져 있어야 한다. 문제 풀이 N 이 2 이상일 때, k = 9의 경우는 항상 1. 99, 999, 999... N 이 2 이상일 때, k < 8 의 값은 dp[N-1][k] + dp[N-1][K+1, K+2.... 8]; 주의사항 첫 시작 수는 0부터 시작한다. 0으로 시작하는 수의 n=2 값의 경우 00, 01, 02, 03, 04... 는 n=1 값의 1, 2, 3, 4.. 와는 다르다. 끝자리가 9가 되면 더이상의 오름차순은 불가능해진다. 111, 222, 333, 22223 과 같은 중복수가 가능해진다. 결과 bottom-up top-down 공감수 0 댓글수 0 2022. 3. 11.
    문의안내
    • 티스토리
    • 로그인
    • 고객센터

    티스토리는 카카오에서 사랑을 담아 만듭니다.

    © Kakao Corp.