1
추천
2
풀이
Lv. 4 이진트리 레이아웃 #3
이진트리를 그리기 위해 각 노드의 위치 (x,y)를 계산하는 문제다. 트리의 노드 위치를 결정하기 위한 레이아웃 알고리즘은 아래와 같다. 출처: ## 레이아웃 알고리즘 모든 노드에서 좌우 간격의 대칭을 유지하면서 최대한 컴팩트하게 만든다. ## 입출력 트리를 생성하기 위한 입력 ...
0
추천
2
풀이
Lv. 3 이진트리 레이아웃 #2
이진트리를 그리기 위해 각 노드의 위치 (x,y)를 계산하는 문제다. 트리의 노드 위치를 결정하기 위한 레이아웃 알고리즘은 아래와 같다. 출처: ## 레이아웃 알고리즘 두 자식의 x축 상 간격이 2의 배수로 증가한다. y좌표는 트리 상의 깊이로 결정된다. ## 입출력 트리를 생성 ...
이진트리
2
추천
3
풀이
Lv. 3 이진트리 레이아웃 #1
이진트리를 그리기 위해 각 노드의 위치 (x,y)를 계산하는 문제다. 트리의 노드 위치를 결정하기 위한 레이아웃 알고리즘은 아래와 같다. 출처: ## 레이아웃 알고리즘 * 각 노드의 x좌표는 inorder 순회 시의 위치에 해당한다. * 각 노드의 y좌표는 깊이에 해당한다. (루 ...
1
추천
5
풀이
Lv. 3 LISP 계산기
LISP은 괄호로 유명한 언어다. 이 문제는 LISP 형태로 표현된 4칙연산 산술식을 계산하는 계산기 프로그램을 작성하는 것이다. LISP 표현식은 여는 괄호와 공백으로 구분된 항(term)의 목록 그리고 닫는 괄호로 만들어진다. 첫 번째 항은 +, -, *, /와 같은 심볼이며 ...
recursive descent parser
1
추천
2
풀이
Lv. 4 소수로만 이뤄진 마방진
요즘 사이트가 침체(?) 된거 같아 문제하나 투척하고 갑니다.^^ 마방진은 각각의 숫자가 다르고 행과 열 및 대각선의 합이 같은 정사각 행렬이다. 가령 3x3 행렬의 마방진 중 대표적인 것은 다음과 같다. 4 9 2 3 5 7 8 1 6 그렇다면 3x3 마방진 중 500보다 작은 ...
3
추천
8
풀이
Lv. 3 놀이공원 인형 맞추기
놀이공원에 가면 인형 맞추기 게임이 있다. 한 놀이공원에는 인형에 숫자를 써놓고 인형 맞추기를 한다. 그런데 맞춘 인형의 숫자의 합이 특정한 값이 되는 경우에만 맞춘 인형을 가져 갈 수 있다. 가령 10개의 인형에 쓰여진 숫자가 각각 25 27 3 12 6 15 9 30 21 1 ...
1
추천
13
풀이
Lv. 2 트럭 - ACM 2016 문제 중에서
강을 가로지르는 하나의 차선으로 된 다리가 하나 있다. 이 다리를 n 개의 트럭이 건너가려고 한다. 트럭의 순서는 바꿀 수 없으며, 트럭의 무게는 서로 같지 않을 수 있다. 다리 위에는 단지 w 대의 트럭만 동시에 올라갈 수 있다. 다리의 길이는 w 단위길이(unit distan ...
3
추천
21
풀이
Lv. 1 Dash Insert
DashInsert 함수는 숫자로 구성된 문자열을 입력받은 뒤, 문자열 내에서 홀수가 연속되면 두 수 사이에 - 를 추가하고, 짝수가 연속되면 * 를 추가하는 기능을 갖고 있다. (예, 454 => 454, 4546793 => 454*67-9-3) DashInsert 함수를 완성 ...
1
추천
6
풀이
Lv. 5 소수 쌍
**문제** 지민이는 수의 리스트가 있을 때, 이를 짝지어 각 쌍의 합이 소수가 되게 하려고 한다. 예를 들어, {1, 4, 7, 10, 11, 12}가 있다고 하자. 지민이는 다음과 같이 그룹지을 수 있다. 1 + 4 = 5, 7 + 10 = 17, 11 + 12 = 23 또는 ...
네트워크 플로우 이분 매칭 소수 판정
2
추천
18
풀이
Lv. 2 가장 긴 공통의 부분문자열 구하기
여기서의 “부분”은 LCS문제에서의 “부분”과는 다른 의미임을 명심하라. nice라는 문자열이 있다면 이 문제에서의 부분문자열의 집합은 {‘’, n, i, c, e, ni, ic, ce, nic, nice}이다. LCS문제에서의 “부분”에서는 nce도 하나의 부분문자열로 볼 수 ...
최적해 구하기 알고리즘