문제 설명 포화 이진 트리에서 높이가 n일 때 전체 노드의 개수를 구한다. 결과 값은 값이 오버플로우를 방지하기 위해 1,000,000,007로 나눈 나머지 값을 반환한다.
목적지까지 가는 방법의 수를 구하는 문제를 풀며 내용을 정리했습니다. 개인적으로 풀이가 어렵게 느껴진 문제라 꼭 정리해야겠다고 생각했습니다. `DP 알고리즘`을 쓰려면 꼼꼼하게 세부적인 사항을 고려해서 변수를 이용하고 값을 초기화해야 한다는 걸 배울 수 있었습니다
배열은 일반적으로 고정된 사이즈를 가지며, 동일한 타입의 데이터를 연속된 메모리 공간에 저장합니다. 각 데이터는 인덱스를 갖기 때문에 빠른 검색과 접근이 가능합니다. ✅ Java의 ArrayList나 Python의 list는 동적 배열로 가변 크기를 가집니다.주요 연산
해시 테이블은 '키-값'쌍을 저장하는 자료구조입니다. 평균적으로 빠른 검색과 삽입이 가능하지만, 해시 함수 품질과 해시 충돌을 처리하는 방법이 중요합니다.키 입력: 키 값인 Apple을 해시 함수에 입력해시 값 생성: 해시 함수가 키를 인덱스 4로 변환해시 테이블에 저
문제 설명 0과 1로 이루어진 2차원 배열이 주어진다. 출발지 1에서 목적지인 0까지 가는 최소 거리를 구해서 주어진 배열과 같은 크기의 배열로 출력한다. 조건 상하좌우로만 이동 가능하고 대각선은 불가 배열의 행과 열은 하나 이상 존재 0은 하나 이상 존재 풀이
문제 설명 2차원 배열로 추어지는 포화 이진트리에서 루트 노드부터 리프 노드까지의 경로 중 합이 가장 작은 값을 반환한다.
문제 설명 길이가 N인 정수 배열 `A`가 주어진다. 이 배열에서 합이 `K`를 넘지 않도록 최대한 많은 원소를 선택하려고 한다. 선택할 수 있는 최대 원소 개수를 반환한다.
문제 설명 자판기는 아래와 같은 금액의 지폐와 동전을 투입받고 반환할 수 있다. 동전 종류: 10, 50, 100, 500 지폐 종류: 1000, 5000, 10000 투입한 지폐와 동전은 순서대로 정수 배열 arr에 주어진다. 사용자가 반환을 요청하면 자판기는