Merged
Conversation
YoonYn9915
approved these changes
Apr 13, 2025
Member
YoonYn9915
left a comment
There was a problem hiding this comment.
계단수 문제 잘 푸셨나요? 저는 아직 이해가 잘 안됩니다..
한주 수고하셨습니다
🔥2025-04 챌린지 진행 상황👉 그래프
👉 DP
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🌱WIL
계단수문제와극장좌석문제이다.계단수문제의 경우비트마스킹을 사용한다는 것이 새로웠다. 비트마스킹은 이론적으로는 아는 개념인데 이를 DP에 어떻게 적용하는지가 관건이었고 어려운 부분이었다. 이 문제를 통해서<<연산자가 언제, 왜 쓰이는지를 이번 기회에 정확히 알 수 있었다.극장좌석문제의 경우, 문제의 겉모습에서는 전혀 피보나치 수열의 규칙성이 보이지 않지만 조금 더 들여다보면 피보나치 수열이 사용되는 것이 놀라웠다. 피보나치 수열의 가능성을 다른 문제를 풀 때도 열어둬야겠다. 또한 VIP 좌석을 기준으로 구간을 나누고, 각 구간의 경우의 수를 따로 구해 곱하는 방식은 다른 문제에도 응용할 수 있을 것 같다.DP만 풀다가 다시 그래프 봤을 때 하나도 못 풀까봐 조금 걱정된다🚀주간 목표 문제 수: 3개
백준 #10844. 쉬운 계단 수: DP / 실버1
정리한 링크: (바로가기)
🚩제출한 코드
💡TIL
백준 #2193. 이친수: DP / 실버3
정리한 링크: (바로가기)
🚩플로우 (선택)
N을 입력받는다.dp배열을 초기화한다. (N+1길이로 생성)dp[1] = 1로 초기값을 설정한다.i가 2부터N까지 반복하면서 점화식에 따라 값을 채워나간다.dp[N]을 출력한다.🚩제출한 코드
💡TIL
백준 #1562. 계단수: DP / 골드1
정리한 링크: (바로가기)
🚩플로우 (선택)
입력 받기
N을 입력 받는다. (계단 수의 길이)MOD = 10^9설정DP 배열 정의
dp[n][last][mask]길이가
n, 끝자리 숫자가last, 지금까지 등장한 숫자의 비트마스크가mask인 경우의 수초기화
점화식 적용
정답 계산
0b1111111111(=1023)인 경우만 누적해서 출력🚩제출한 코드
💡TIL
비트마스킹에 대해서 개념적으로만 알고 있었는데,
실제로 문제 풀이에 활용하려 하니까 헷갈리는 부분이 많았다.
특히
<<연산자가 언제, 왜 쓰이는지를 이번 기회에 정확히 알 수 있었다.전체적으로 비트마스크를 활용한 DP 문제의 구조와 패턴을 체득할 수 있었던 좋은 경험이었다.
백준 #2302. 극장 좌석: DP / 실버1
🚩플로우 (선택)
입력 처리
N, VIP 좌석 개수M, VIP 좌석 번호를 입력받는다.DP 배열 초기화
dp[i]: VIP가 없을 때, 연속된i개의 좌석에서 가능한 배치의 수dp[i] = dp[i-1] + dp[i-2]dp[0] = 1,dp[1] = 1VIP 좌석 기준으로 구간 나누기
VIP 전까지의 자유 좌석 구간 길이를 계산하고,그 구간에서 가능한 배치 수
dp[구간 길이]를 누적해서 곱한다.마지막 구간 처리
결과 출력
🚩제출한 코드
💡TIL