반응형 알고리즘3 [BOJ12865] 평범한 배낭 [BOJ12865] 평범한 배낭 문제 링크 BOJ12865 - 평범한 배낭 문제 설명 N(1 2022. 3. 16. [Leetcode543] Diameter of Binary Tree [Leetcode543] Diameter of Binary Tree 문제 링크 Leetcode Diameter of Binary Tree 문제 설명 트리를 이루는 임의의 두 노드 간 거리의 최대값을 구하는 문제였다. 임의의 두 노드 간 거리가 최대가 되는 경우, 루트를 지나지 않는 경로가 존재할 수 있다. 노드의 갯수는 최소 1개 부터 최대 10000(만)개까지 입력으로 주어진다. 풀이 설명 먼저 루트 노드를 기준으로 생각해보면, 루트 노드를 지나는 경로의 최대 거리 = 루트에서 가장 먼 왼쪽 서브 트리 내의 노드에서 루트까지의 경로 + 루트에서 가장 먼 오른쪽 서브 트리 내의 노드에서 루트까지의 경로 이다. 루트에서 가장 먼 왼쪽 서브 트리 내의 노드에서 루트까지의 경로는 다시 왼쪽 자식 노드를 루트로.. 2021. 12. 9. [BOJ10799] 쇠막대기 [BOJ10799] 쇠막대기 문제 링크 BOJ10799 - 쇠막대기 문제 설명 (는 쇠막대기의 시작, )는 쇠막대기의 끝을 의미한다. ()처럼 붙어있는 괄호는 레이저를 의미하는데, 레이저로 쇠막대기를 잘랐을 때 쇠막대기가 몇 조각이 나오는지를 출력하는 문제이다. 쇠막대기의 길이가 짧을수록 위에 존재하며, 쇠막대기끼리 양 끝점이 겹치지 않는다. 위의 그림에서 화살표는 레이저를 의미한다. 따라서 레이저로 쇠막대기를 잘랐을 때 17개의 조각이 나온다. 풀이 설명 (가 나오면 스택에 담는다. 스택의 크기는 쇠막대기의 갯수를 의미하는데, 레이저가 한번 자를 때 쇠막대기의 갯수만큼 조각이 생기니까 스택의 갯수만큼 Answer에 더해준다. 레이저를 의미하는 ()의 여는 괄호도 스택에 담기는데 이는 별도의 조건으로 처.. 2021. 11. 19. 이전 1 다음 반응형