728x90 코드트리38 [BFS] 가중치가 동일한 그래프에서의 BFS / 4가지 연산을 이용하여 1 만들기 문제링크 https://www.codetree.ai/missions/2/problems/make-one-using-four-operations?&utm_source=clipboard&utm_medium=text 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석 국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요. www.codetree.ai 1. 핵심 특정한 '연산'을 이용하여 특정한 수 만들기 유형 - DP or BFS 유형의 문제 BFS로 문제 풀이를 할 경우.. 기존에 방문했는지를 확인하는 in_queue와 도달거리를 확인하는 visited를 만들어야 하는데 이 문제의 유형은 2차원 그래프처럼 in_queue, visited의 .. 2024. 2. 11. [BFS] 상한 귤 [문제그림] 문제링크 https://www.codetree.ai/missions/2/problems/oranges-have-gone-bad?&utm_source=clipboard&utm_medium=text 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석 국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요. www.codetree.ai 1. 핵심 유형: BFS 유형 중 출발점이 2개 이상인 BFS 상한 귤(2) 가 일반 귤(1)을 상하게 한다는 점!! 상한귤(2)을 시작점으로 bfs 시작 귤이 상하면 기존에 일반 귤(1) 이 상한 귤(2)로 변경됨! 거의 같은 문제 https://www.acmicpc.net/problem/7576 .. 2024. 2. 11. [시뮬레이션] 핀볼게임 문제링크 https://www.codetree.ai/missions/2/problems/pinball-game?&utm_source=clipboard&utm_medium=text 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석 국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요. www.codetree.ai 1. 핵심 / 과 \ 부딪혔을 때 방향전환 다루기 회전을 할 때는 동(0) 남(1) 서(2) 북(3)을 기본으로 한다. 1번(/): 0 ↔ 3, 1 ↔ 2 2번(\): 2 ↔ 3, 0 ↔ 1 def change_dir(r, c, d): if board[r][c] == 1: d = 3 - d elif board[r][c] == 2.. 2024. 2. 10. [시뮬레이션] 금 채굴하기 문제링크 https://www.codetree.ai/missions/2/problems/gold-mining?&utm_source=clipboard&utm_medium=text 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석 국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요. www.codetree.ai 1. 핵심 L1 거리는 구하는 방법 방법1. 같은 거리에 존재하는 마름모 껍질에 존재하는 좌표들 구하기 # 좌표(0, 0) 기준 거리가 k인 점들의 집합 def taxi_circle(k): if k == 0: return [(0, 0)] # 거리가 k라는 것은 x좌표 + y좌표 = k 가 됨을 의미한다. points = [] # .. 2024. 2. 10. [이분탐색 - Parametric Search] 삼 오 무 문제링크 https://www.codetree.ai/missions/8/problems/three-five-moo?&utm_source=clipboard&utm_medium=text 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석 국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요. www.codetree.ai 1. 핵심 특정 숫자가 몇 번째 위치하는지 파악하기 → find_seq 함수 8은 5번째 숫자이다. 이유는 8 앞에 3의 배수는 3, 6 / 5의 배수 5가 존재한다. 따라서 원래 8번째 수인 8 앞에 '무'로 만들어야할 숫자가 3개이다. 따라서 8 - 3 = 5번째 숫자가 된다. 16은 9번째 숫자이다. 이유는 16의 앞에.. 2024. 2. 9. [백트래킹] 최소 점프 횟수 문제링크 https://www.codetree.ai/missions/2/problems/min-num-of-jumps?&utm_source=clipboard&utm_medium=text 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석 국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요. www.codetree.ai 1. 핵심 이동하는 백트래킹 유형 new_idx가 n보다 작다는, 즉 new_idx의 범위 판정 필요함. 2. 코드(Python) n = int(input()) nums = list(map(int, input().split())) min_val = 11 ans = [] def dfs(idx: int): global min.. 2024. 2. 9. 이전 1 2 3 4 5 6 7 다음 728x90 반응형