[C/C++] 백준 11286


[C/C++] 백준 11286

문제 소스 코드 #include <iostream> #include <vector> using namespace std; #define MAX_HEAP_SIZE 100001 #define EMPTY_HEAP(n) (!n) #define FULL_HEAP(n) (n == MAX_HEAP_SIZE - 1) #define abs(n) ((n > 0) ? n : -n) int cursor = 0; int abs_min_heap[MAX_HEAP_SIZE] = {0}; void push(int key) { if(FULL_HEAP(cursor)) return ; int i = ++cursor; while(i != 1 && abs(abs_min_heap[i/2]) >= abs(key)) { if(abs(abs_min_heap[i/2]) == abs(key)) { if(abs_min_heap[i/2] > key) // 부호가 다른 경우 바꿔주고 { abs_min_heap[i] = abs_min_he...



원문링크 : [C/C++] 백준 11286