본문 바로가기
728x90
반응형

codetree3

[CodeTree] 삼각형 컨베이어 벨트 https://www.codetree.ai/missions/2/problems/conveyor-belt-triangle/description알고리즘시뮬레이션특정한 알고리즘을 요구하지 않는 단순 구현 문제이고 1차원 배열을 한 쪽 방향으로 n칸 만큼 미는 문제이다. 1차원 배열을 한 쪽 방향으로 n칸 만큼 미는 방법은 구현 문제에서 자주 등장하기 때문에 정리해두려고 한다. 문제 해결 과정한 칸씩만 미는 경우를 생각해보자. 크게 두 가지 방법이 있는데 기존 배열을 활용하는 방법과 새로운 배열을 생성하는 방법이다. 기존 배열을 활용할 때는 다음 두 가지를 기억하자.방향을 반대로 생각한다.첫 값을 기억해둔다.n을 최소화 한다.오른쪽으로 한 칸씩 미는 경우는 다음과 같다. 만약 진행 방향과 동일하게 진행한다면 이.. 2024. 8. 23.
[CodeTree] 격자 칠하기 2 https://www.codetree.ai/missions/8/problems/painting-the-grid-2/description 코드트리 | 코딩테스트 준비를 위한 알고리즘 정석국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.www.codetree.ai 알고리즘bfsparametric search 이 문제는 결정 문제로 변환한 뒤 이진 탐색을 진행하는 평범한 parametric search 문제이다. bfs와 parametric search 기본 지식이 있으면 풀 수 있는 문제지만 초반에 시간 복잡도 계산을 잘못해서 한참 삽질을 해서 가져와 보았다. 이진 탐색으로 d의 범위를 좁히면서 조건을 만족하는 가장 작은 d를 찾으면.. 2024. 8. 18.
[CodeTree] 우리는 하나 https://www.codetree.ai/missions/2/problems/we-are-the-one/description 알고리즘조합bfsn x n개의 도시 중 k개의 도시를 선택한 뒤 각각의 경우에 대해 bfs를 진행하면 되는 이유다. 문제 자체는 평범하지만 시간 초과가 발생했고 조합에서 시간을 줄일 수 있는 문제라서 가져와보았다. 풀이 과정변수 import sysinput = sys.stdin.readline# 동서남북dx = [0, 0, 1, -1]dy = [1, -1, 0, 0]# n : 격자의 크기 n x n# k : 고를 도시의 수 # u : 최저 높이 차# d : 최고 높이 차n, k, u, d = map(int, input().split())arr = [list(map(int, inp.. 2024. 8. 17.
728x90
반응형