비감소 부분 수열과 순열 생성 알고리즘

491 비감소 부분 수열 문제 링크 문제 설명: 정수 배열 nums가 주어졌을 때, 모든 다른 비감소 부분 수열을 찾아 반환하세요. 비감소 부분 수열은 적어도 두 개의 요소를 가져야 합니다. 답변을 임의의 순서로 반환할 수 있습니다. 배열에는 중복 요소가 포함될 수 있습니다. 두 정수가 같은 경우에도 비감소 시퀀스의 특수한 경우로 간주할 수 있습니다. 예시 1: <stro ...

6월 19일 21:05에 게시됨

재귀와 백트래킹: 알고리즘 문제 해결 전략

이번专题에서는 재귀와 백트래킹 알고리즘에 대해 심도 있게 다루어 보겠습니다. 주로 온라인 저지 사이트에서 수집한 문제들을 바탕으로 설명하며, 필요한 경우 예제 코드를 포함합니다. 순열과 조합 ======= 1.1 기본 조합 문제(출처: leetcode) 문제: 두 정수 n과 k가 주어졌을 때, 1부터 n까지의 정수 중에서 k개를 선택하는 모든 조합을 반환합니다. class Solution ...

6월 14일 19:45에 게시됨

동적 역순 쌍 계산 문제

문제 개요 길이가 \(n\)인 순열 \(a\)가 주어진다. 두 원소를 교환할 때마다 역순 쌍의 개수를 2로 나눈 나머지를 출력해야 한다. 입력 형식 첫 번째 줄에는 양의 정수 \(n\)이 주어진다. 두 번째 줄에는 순열 \(a\)를 구성하는 \(n\)개의 숫자가 주어진다. 세 번째 줄에는 질의 수 \(q\)가 주어진다. 다음 \(q\)줄에는 각각 두 개의 양의 정수가 주어지며, 이는 \(a_i\)와 ...

6월 11일 16:49에 게시됨

전체 순열에서 K번째 수열 찾기

문제 설명 정수 수열 a₁, a₂, …, aₙ의 각 원소가 1부터 n 사이의 값을 가지며 중복이 없다면 이를 전체 순열(전체 배열)이라고 부릅니다. 예를 들어, [1,3,2]와 [4,3,2,1]은 모두 전체 순열입니다. 전체 순열들을 정렬할 때 다음과 같은 우선순위 규칙을 따릅니다: 길이가 n < m이면 a 수열이 앞섭니다. 길이가 n > m이면 b 수열이 앞섭니다. 길이가 같으면 사전순 ...

6월 3일 18:00에 게시됨