#78. [백준_C언어] 2220 : 힙 정렬 \ 정렬

 

입력 코드

#include<stdio.h>

int n, a[100001];
int main() {
	scanf("%d", &n);

	for (int i = 1; i < n; i++) {
		for (int j = i; j > 1; j /= 2) { 
			a[j] = a[j / 2]; 
		}
		a[1] = i + 1;
	}

	a[n] = 1;
	for (int i = 1; i <= n; i++) {
		printf("%d ", a[i]);
	}

	return 0;
}

출처 www.acmicpc.net/source/10736384

 

 

코드 설명

#그리디알고리즘

 

 

문제 출처

www.acmicpc.net/problem/2220

 

2220번: 힙 정렬

힙은 자료의 추가, 우선순위가 제일 높은 자료의 삭제가 가능한 자료구조이다. 이와 같은 힙에는 두 종류가 있는데, 각각 최소-힙, 최대-힙이다. 이 문제에서는 최대-힙을 다루기로 하자. 이와 같

www.acmicpc.net