백준4 이진 검색 트리 이진 검색 트리 1. 문제 2. 문제 풀이2. 1 이진 검색 트리이진 검색 트리는 문제에 나와있는 것과 같이 다음과 같은 조건을 만족하는 트리이다. 1. 노드의 왼쪽 서브트리에 있는 모든 노드의 키는 노드의 키보다 작다.2. 노드의 오른쪽 서브트리에 있는 모든 노드의 키는 노드의 키보다 크다.3. 왼쪽, 오른쪽 서브트리도 이진 검색 트리이다. 이진 검색 트리를 만드는 방법은 다음과 같다. 1. 값을 새롭게 추가할 때 루트 노드부터 시작한다.2. 추가할 값이 노드의 값보다 작을 경우 왼쪽, 클 경우 오른쪽에 배치한다.3. 만약 노드의 왼쪽이나 오른쪽 값이 이미 존재한다면, 해당 노드 부터 2~3번을 반복한다. 이를 코드로 구현하면 다음과 같다. [이진 검색 트리_Node 클래스]public sta.. 2025. 5. 20. 퍼-즐 퍼-즐 백준 1525번 문제 https://www.acmicpc.net/problem/1525 1525번: 퍼즐 세 줄에 걸쳐서 표에 채워져 있는 아홉 개의 수가 주어진다. 한 줄에 세 개의 수가 주어지며, 빈 칸은 0으로 나타낸다. www.acmicpc.net 1. 문제 2. 풀이 2.1 풀이 방법 우선 나는 2차 배열인 퍼즐을 1차 배열로 변환하고 문제를 풀었다. 문제를 풀 때, 주어진 퍼즐의 원소를 이동시켜야 하는데 2차 배열보다는 1차 배열이 다루기 더 쉬울 거 같았기 때문이다. 2차 배열의 각 위치를 1차 배열로 표현할 수 있기 때문에 1차 배열로 변환해서 문제를 푸는데 전혀 문제가 되지 않는다. [1차 배열로 변환] 문제는 간단하다 목표 상태에 도달하기 위한 행위의 최솟값을 구하는 것이기 때문.. 2023. 1. 2. 아기 상-어 아기 상-어 백준 16236번 문제 https://www.acmicpc.net/problem/16236 16236번: 아기 상어 N×N 크기의 공간에 물고기 M마리와 아기 상어 1마리가 있다. 공간은 1×1 크기의 정사각형 칸으로 나누어져 있다. 한 칸에는 물고기가 최대 1마리 존재한다. 아기 상어와 물고기는 모두 크기를 가 www.acmicpc.net 1. 문제 문제 N×N 크기의 공간에 물고기 M마리와 아기 상어 1마리가 있다. 공간은 1×1 크기의 정사각형 칸으로 나누어져 있다. 한 칸에는 물고기가 최대 1마리 존재한다. 아기 상어와 물고기는 모두 크기를 가지고 있고, 이 크기는 자연수이다. 가장 처음에 아기 상어의 크기는 2이고, 아기 상어는 1초에 상하좌우로 인접한 한 칸씩 이동한다. 아기 상어.. 2022. 5. 16. A-C A-C 백준 5430번 문제 https://www.acmicpc.net/problem/5430 5430번: AC 각 테스트 케이스에 대해서, 입력으로 주어진 정수 배열에 함수를 수행한 결과를 출력한다. 만약, 에러가 발생한 경우에는 error를 출력한다. www.acmicpc.net 1. 문제 문제 선영이는 주말에 할 일이 없어서 새로운 언어 AC를 만들었다. AC는 정수 배열에 연산을 하기 위해 만든 언어이다. 이 언어에는 두 가지 함수 R(뒤집기)과 D(버리기)가 있다. 함수 R은 배열에 있는 수의 순서를 뒤집는 함수이고, D는 첫 번째 수를 버리는 함수이다. 배열이 비어있는데 D를 사용한 경우에는 에러가 발생한다. 함수는 조합해서 한 번에 사용할 수 있다. 예를 들어, "AB"는 A를 수행한 다음에.. 2022. 5. 15. 이전 1 다음