BOJ Review/Algorithms3 [BOJ 11279] MaxHeap #include using namespace std; void MaxHeapify(int A[], int heap_size, int i) { int left = 2*i; int right = 2*i + 1; int largest; if(left A[i]) largest = left; else largest = i; if(rightA[largest]) largest = right; if(largest != i){ int temp = A[i]; A[i] = A[largest]; A[largest] = temp; MaxHeapify(A, heap_size,largest); } } void BuildMaxHeap(int A[], int heap_size){ for(int i=heap_size/2; i>=1; i.. 2023. 9. 7. [C++ Data Structure] Stack 구현 #include #include using namespace std; template class Stack{ private: int top_idx, maxSize; T* stack; public: Stack(int max_size) :maxSize(max_size), top_idx(-1) { stack = new T[maxSize]; } bool isFull(){ if(top_idx==maxSize-1) return true; else return false; } bool isEmpty(){ if(top_idx==-1) return true; else return false; } T pop(){ if(isEmpty()) return -1; else return stack[top_idx--]; } void.. 2023. 8. 31. [BOJ] 13241. Euclidean algorithm #include using namespace std; long long int Greatest_Common_Divisor(long long int A, long long int B) { while(B > 0) { long long int tmp = A; A = B; B = tmp % B; } return A; } int main() { std::ios_base::sync_with_stdio(false); std::cin.tie(nullptr); std::cout.tie(nullptr); long long int A, B; cin >> A >> B; long long int gcd = Greatest_Common_Divisor(A, B); cout 2023. 8. 21. 이전 1 다음