알고리즘 시험 주요 유형 정리

주요 알고리즘 패턴별 예제 재귀: 병합 정렬 병합 정렬은 배열을 반으로 나눈 후 정렬된 부분들을 병합하는 전형적인 재귀 알고리즘이다. #include<iostream> #include<vector> using namespace std; vector<int> data; vector<int> temp(1000); void mergeSort(int left, int right) { if (left >= right) return; int mid ...

7월 4일 02:32에 게시됨

2736. 최대합 쿼리: 단일 차원에서 이차원 차원으로의 확장과 문제 해결 전략 분석

문제 개요 LeetCode의 2736. 최대합 쿼리는 난이도가 고난도이며, 다음 태그를 포함한다: 정렬, 이산화, 트리 구조 배열 (트리형 배열). 두 개의 길이가 동일한 정수 배열 nums1과 nums2가 주어지고, 각각의 인덱스에 해당하는 요소는 짝을 이루며 하나의 쌍을 형성한다. 또한 하위 인덱스가 1부터 시작하는 2차원 배열인 queries가 제공된다. 각 쿼리 i에 대해, 조건 ...

6월 1일 11:59에 게시됨

자녀 줄세우기 문제 풀이

자녀 줄세우기 출처 제5회 랴오차오컵 지역 C++ B그룹 알고리즘 트리 배열 그리디 병합 정렬 문제 설명 n명의 아이들이 일렬로 서 있습니다. 이제 키가 작은 순서대로 정렬해야 하지만, 인접한 두 아이만 교체할 수 있습니다. 각 아이에는 불만도가 있습니다. 처음에는 모든 아이들의 불만도가 0입니다. 어떤 아이가 처음 교체를 요청받으면 불만도가 1 증가하고, 두 번째 ...

5월 19일 15:27에 게시됨