알고리즘 시험 주요 유형 정리
주요 알고리즘 패턴별 예제
재귀: 병합 정렬
병합 정렬은 배열을 반으로 나눈 후 정렬된 부분들을 병합하는 전형적인 재귀 알고리즘이다.
#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에 게시됨