분류 파라매트릭 서치 혼자 힘으로 해결 했는가? 애매하다.. 느낀 점 이런 류의 문제가 생각보다 나는 접근이 힘들다. 문제의 요구사항을 그대로 수행하는 방식으론 절대 해결이 불가능 하다. 일단 입력 값 부터 10억이기 때문에 무조건 log로 만들어야 하고 이는 이분 탐색이 필요함을 알 수 있다. 그러나 어디에 이분 탐색을 써야하는지가 생각하기 힘들다. 우선 이 문제는 약간의 그리디로 접근을 해야하는데 그렇다고 무조건 그리디로 해결하면 안된다. 2가지이면 특정 사람이 1번에서 검사를 받거나 or 2번에서 검사를 받는 형태의 dp로 접근을 하겠지만 (그러나 입력 값이 10억이라 그냥 안됨) 우선 어떻게 해결을 할지부터가 어려웠다. 이 문제는 어렵게 생각하기 보다는 그냥 가장 오래 걸리는 시간까지 1씩 증가 ..
분류 구현, (우선순위 큐) 혼자 힘으로 해결 했는가? O 느낀 점 상어....만 보면 머리가 아파진다. 이 문제를 이번에 처음 푸려고 시도한 것은 아니다. 약 6개월 전에 해결을 해보고자 문제를 읽었지만 너무 머리가 복잡해져서 포기했다. 다시 도전하니 한번에 해결을 해서 기분이 좋았다. 이 문제에서 조건이 많아서 귀찮다. 어렵지는 않지만 귀찮고 과연 이게 될까? 라는 생각에 풀이를 시작하기가 꺼려진다. 이 문제에서 제일 짜증났던 부분은 아래와 같다. 비어있는 칸 중에서 좋아하는 학생이 인접한 칸에 가장 많은 칸으로 자리를 정한다. 1을 만족하는 칸이 여러 개이면, 인접한 칸 중에서 비어있는 칸이 가장 많은 칸으로 자리를 정한다. 2를 만족하는 칸도 여러 개인 경우에는 행의 번호가 가장 작은 칸으로, 그..
분류 BFS 혼자 힘으로 해결 했는가? O 느낀 점 이제 이러한 비슷한 3차원 BFS문제는 크게 어렵지 않게 풀수 있을것 같다. 비슷한 문제는 1600번인데, 해당 문제와 차이점은 z축으로 추가적인 이동을 하기 위해서는 이동하는 그래프가 벽일 때만 가능하도록 해줘야 한다는 것이다. 내가 작성한 코드 from sys import stdin from collections import deque N, M, K = map(int, input().split()) MX = 10000001 graph = [] visit = [[[MX for k in range(K + 1)] for col in range(M)]for row in range(N)] for i in range(N): graph.append(list(st..