Open
Conversation
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.
🚀 싸피 15반 알고리즘 스터디 20주차 [권혁준]
📌 문제 풀이 개요
✅ 문제 해결 여부
💡 풀이 방법
문제 1: 유전자
문제 난이도
Gold 3
문제 유형
접근 방식 및 풀이
행렬 곱셉 순서 문제와 비슷하게 구간 DP로 접근했습니다.
dp[i][j] = i~j 범위의 부분 서열에서 가능한 최대 KOI 유전자 길이이렇게 하면$O(N^3)$ 에 구할 수 있습니다.
문제 2: 장난감 조립
문제 난이도
Gold 2
문제 유형
접근 방식 및 풀이
부품들 간의 관계 X, Y, K의 의미가 "X를 만드는 데 Y가 K개 필요하다"는 뜻이니까,
Y -> X 방향 간선의 가중치를 K로 설정하기로 생각했습니다.
이렇게 해서 만들어지는 방향 그래프의 진입 차수가 0인 점들이 기본 부품이 됩니다.
위상 정렬의 순서대로, 간선을 이용할 때마다 다음 부품에게 필요한 상태를 전이해줍니다.
문제 3: 계보 복원가 호석
문제 난이도
Gold 2
문제 유형
접근 방식 및 풀이
X의 조상 중에 Y가 있다는 것은, Y -> X로의 간선이 원래 트리 상에 존재할 수도 있다는 뜻입니다.
가문의 시조를 구하는 것은 진입 차수가 0인 점을 구하는 것이니까 쉬운데,
이 시조로부터 위상 정렬을 했을 때 큐에 넣게 되는 순간만이 진짜 간선이 존재하는 것임을 알아차리기 어려웠습니다.
문제 4: ABBC
문제 난이도
Gold 3
문제 유형
접근 방식 및 풀이
C는 오직 B에만 영향을 받고, (B,C) 쌍이 소거되어도 (A,B) 시행에 전혀 손해를 주지 않습니다.
따라서, (B,C) 쌍에 대한 시행을 먼저 다 해줬습니다.
이 때, 어떤 B와 매칭되는 C는 가장 가까워야 합니다.
그 다음으로, (A,B) 쌍에 대한 시행도 위와 똑같이 해주면 됩니다.
문제 5: 제자리 멀리뛰기
문제 난이도
Gold 2
문제 유형
접근 방식 및 풀이
지난 주에 풀었던
레이스문제와 비슷하게 해결했습니다.시작점이 0으로 고정되어 있어서, 특정 매개 변수에 대한 valid 체크 방식이 더 쉬웠습니다.
변수 x에 대해 valid를 확인할 때,
단순히 0으로부터 거리 x 이상의 첫 돌을 고른 뒤, 이 작업을 반복합니다.
고른 돌의 수가 N-M 이상일 때 valid입니다.