From 011ed70ce7791e5d30bc5b14edcd0533c56fb9f7 Mon Sep 17 00:00:00 2001 From: MoonChaeyeon Date: Tue, 18 Jan 2022 13:18:22 +0900 Subject: [PATCH 01/11] code: Moonchaeyeon boj 1158 --- ...\354\212\244 \353\254\270\354\240\234.cpp" | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 "Moonchaeyeon/1158_\354\232\224\354\204\270\355\221\270\354\212\244 \353\254\270\354\240\234.cpp" diff --git "a/Moonchaeyeon/1158_\354\232\224\354\204\270\355\221\270\354\212\244 \353\254\270\354\240\234.cpp" "b/Moonchaeyeon/1158_\354\232\224\354\204\270\355\221\270\354\212\244 \353\254\270\354\240\234.cpp" new file mode 100644 index 0000000..529f54f --- /dev/null +++ "b/Moonchaeyeon/1158_\354\232\224\354\204\270\355\221\270\354\212\244 \353\254\270\354\240\234.cpp" @@ -0,0 +1,43 @@ +#include +#include +#include +using namespace std; +unsigned int N, K; + +int main() { + cin >> N >> K; + + queue peopleArr; + vector yoseArr; + + // ÃʱⰪ setting + for (int i = 1; i <= N; i++) + peopleArr.push(i); + + int turn = 1 % K; + while (peopleArr.size() > 0) { // ½ÇÇà Á¶°Ç : ³²Àº »ç¶÷ÀÌ 0¸í ÀÌ»óÀ϶§¿¡¸¸ ·çÇÁ ½ÇÇà + if (turn != 0) { + peopleArr.push(peopleArr.front()); // ´Ù½Ã ¹è¿­¿¡ Ãß°¡½ÃÅ´ + } + else { // »©¾ß ÇÒ ¾ÆÀÌÀ̸é + yoseArr.push_back(peopleArr.front()); // yoseArr¿¡ ÀúÀå + } + peopleArr.pop(); // ¸¶Áö¸· ¿ø¼Ò¸¦ Á¦°Å + + turn ++; + turn = turn % K; + } + + // result Ãâ·Â + cout << "<"; + for (int i = 0; i < yoseArr.size(); i++) { + if (i != 0) { + cout << ", "; + } + cout << yoseArr[i]; + } + cout << ">"; + + + return 0; +} \ No newline at end of file From da70614bbc274eb79ff055ad5e2802aa9f098c68 Mon Sep 17 00:00:00 2001 From: MoonChaeyeon Date: Tue, 18 Jan 2022 14:05:34 +0900 Subject: [PATCH 02/11] code: Moonchaeyeon boj 9012 --- .../9012_\352\264\204\355\230\270.cpp" | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 "Moonchaeyeon/9012_\352\264\204\355\230\270.cpp" diff --git "a/Moonchaeyeon/9012_\352\264\204\355\230\270.cpp" "b/Moonchaeyeon/9012_\352\264\204\355\230\270.cpp" new file mode 100644 index 0000000..578130e --- /dev/null +++ "b/Moonchaeyeon/9012_\352\264\204\355\230\270.cpp" @@ -0,0 +1,34 @@ +#include +#include +#include +using namespace std; +unsigned int T; + +int main() { + cin >> T; + + for (int turn = 0; turn < T; turn++) { + string testString = ""; + stack testData; + bool correct = true; + + cin >> testString; + for (int s = 0; s < testString.length(); s++) { + if (testString[s] == '(') { + testData.push('('); + } + else if (testString[s] == ')') { + if (testData.size() == 0) { + correct = false; + break; + } + else { + testData.pop(); + } + } + } + cout << ((correct && testData.size()==0) ? "YES" : "NO") << '\n'; + } + + return 0; +} \ No newline at end of file From 123ae4e0d62454e5c67474e8b2fc2d15e0d91f52 Mon Sep 17 00:00:00 2001 From: MoonChaeyeon Date: Fri, 21 Jan 2022 14:11:53 +0900 Subject: [PATCH 03/11] code: Moonchaeyeon boj 1966 --- ...\353\246\260\355\204\260 \355\201\220.cpp" | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 "Moonchaeyeon/1966_\355\224\204\353\246\260\355\204\260 \355\201\220.cpp" diff --git "a/Moonchaeyeon/1966_\355\224\204\353\246\260\355\204\260 \355\201\220.cpp" "b/Moonchaeyeon/1966_\355\224\204\353\246\260\355\204\260 \355\201\220.cpp" new file mode 100644 index 0000000..1dca91c --- /dev/null +++ "b/Moonchaeyeon/1966_\355\224\204\353\246\260\355\204\260 \355\201\220.cpp" @@ -0,0 +1,41 @@ +#include +#include +#include +using namespace std; +unsigned int NT, N, M; + +int main() { + cin >> NT; // test case °³¼ö + for (int i = 0; i < NT; i++) { + cin >> N >> M; + queue> priority_info; // [idx, priority] list¸¦ ÀúÀå + priority_queue max_priorityq; // ¿ì¼±¼øÀ§ + + for (int idx = 0; idx < N; idx++) { // priority¸¦ ¹Þ¾Æ¿È + vector idx_priority(2); + int p; + cin >> p; + idx_priority[0] = idx; + idx_priority[1] = p; + priority_info.push(idx_priority); + max_priorityq.push(p); + } + + int printNum = 0; + while (priority_info.size()) { + vector currItem = priority_info.front(); + if (currItem[1] == max_priorityq.top()) { // °¡Àå ¿ì¼±¼øÀ§°¡ ³ôÀ» ¶§ + printNum++; // print ½ÃÅ´ + max_priorityq.pop(); + if (currItem[0] == M) break; // ³»°¡ ã°íÀÚ ÇÏ´Â ¾ÆÀÌÅÛÀ» Ãâ·ÂÇßÀ¸¸é Á¾·á + } + else { + priority_info.push(currItem); // µÚ¿¡ ³ÖÀ½ + } + priority_info.pop(); // ¾ÆÀÌÅÛÀ» Á¦°ÅÇϱâ + } + cout << printNum << '\n'; + } + + return 0; +} \ No newline at end of file From 6a5c15c191728105e43e2672a096fd7caaa8e4c1 Mon Sep 17 00:00:00 2001 From: MoonChaeyeon Date: Fri, 21 Jan 2022 15:18:10 +0900 Subject: [PATCH 04/11] code: Moonchaeyeon boj 17413 --- ...353\222\244\354\247\221\352\270\260 2.cpp" | 64 +++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 "Moonchaeyeon/17413_\353\213\250\354\226\264 \353\222\244\354\247\221\352\270\260 2.cpp" diff --git "a/Moonchaeyeon/17413_\353\213\250\354\226\264 \353\222\244\354\247\221\352\270\260 2.cpp" "b/Moonchaeyeon/17413_\353\213\250\354\226\264 \353\222\244\354\247\221\352\270\260 2.cpp" new file mode 100644 index 0000000..226ba28 --- /dev/null +++ "b/Moonchaeyeon/17413_\353\213\250\354\226\264 \353\222\244\354\247\221\352\270\260 2.cpp" @@ -0,0 +1,64 @@ +#include +#include +#include +using namespace std; +enum Mode { WORD, TAG, TAG_START, TAG_END, RESET }; +string S; + +int main() { + getline(cin, S); + string result; + Mode mode = WORD; + stack wordContainer; + for (int i = 0; i < S.length(); i++) { + char c = S[i]; + switch (c) { + case '<': + mode = TAG_START; + break; + case '>': + mode = TAG_END; + break; + case ' ': + if (mode != TAG && mode != TAG_START) mode = RESET; + else mode = TAG; + break; + default: + if (mode != TAG && mode != TAG_START) mode = WORD; + else mode = TAG; + break; + } + + switch (mode) { + case RESET: + case TAG_START: + // stack¿¡ ´ã¾Æ³ù´ø ´Ü¾î¸¦ ²¨³»¼­ result¿¡ ÀúÀå + while (wordContainer.size()) { + result += wordContainer.top(); + wordContainer.pop(); + } + result += c; + break; + case TAG_END: + result += c; + mode = WORD; + break; + case TAG: + result += c; + break; + case WORD: + wordContainer.push(c); // °Å²Ù·Î ÀúÀåÇϱâ À§ÇÏ¿© stack¿¡ ´Ü¾îÀÇ ÇÑ ¹®ÀÚ¾¿ ´ãÀ½ + break; + } + } + + // stack¿¡ ´ã¾Æ³ù´ø ´Ü¾î¸¦ ²¨³»¼­ result¿¡ ÀúÀå + while (wordContainer.size()) { + result += wordContainer.top(); + wordContainer.pop(); + } + + cout << result << '\n'; + + return 0; +} \ No newline at end of file From afeff57bb4f93b19ae7bb95f2bf599915e9abbcf Mon Sep 17 00:00:00 2001 From: MoonChaeyeon Date: Sat, 22 Jan 2022 01:37:06 +0900 Subject: [PATCH 05/11] code: Moonchaeyeon boj 2504 --- ...\355\230\270\354\235\230 \352\260\222.cpp" | 60 +++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 "Moonchaeyeon/2504_\352\264\204\355\230\270\354\235\230 \352\260\222.cpp" diff --git "a/Moonchaeyeon/2504_\352\264\204\355\230\270\354\235\230 \352\260\222.cpp" "b/Moonchaeyeon/2504_\352\264\204\355\230\270\354\235\230 \352\260\222.cpp" new file mode 100644 index 0000000..8ba35a2 --- /dev/null +++ "b/Moonchaeyeon/2504_\352\264\204\355\230\270\354\235\230 \352\260\222.cpp" @@ -0,0 +1,60 @@ +#include +#include +#include +using namespace std; + +string str; +stack s; + +int main(void) { + cin >> str; + + int answer = 0; + int temp = 1; + for (int i = 0; i < str.length(); i++) { + if (str[i] == '(') { + temp *= 2; + s.push('('); + } + else if (str[i] == '[') { + temp *= 3; + s.push('['); + } + else if (str[i] == ')') { + if (s.empty() || s.top() != '(') { //¿Ã¹Ù¸£Áö ¸øÇÑ °ýÈ£¿­À̶ó¸é + answer = 0; + break; + } + if (str[i - 1] == '(') { + answer += temp; + temp /= 2; + s.pop(); + } + else { + temp /= 2; + s.pop(); + } + } + else if (str[i] == ']') { + if (s.empty() || s.top() != '[') { //¿Ã¹Ù¸£Áö ¸øÇÑ °ýÈ£¿­À̶ó¸é + answer = 0; + break; + } + if (str[i - 1] == '[') { + answer += temp; + temp /= 3; + s.pop(); + } + else { + temp /= 3; + s.pop(); + } + } + } + + if (!s.empty()) answer = 0; //¿Ã¹Ù¸£Áö ¸øÇÑ °ýÈ£¿­ + + cout << answer << "\n"; + + return 0; +} \ No newline at end of file From a66aedd3d627b290d034dc5ae5911345f891256b Mon Sep 17 00:00:00 2001 From: MoonChaeyeon Date: Sat, 5 Feb 2022 18:45:42 +0900 Subject: [PATCH 06/11] code: Moonchaeyeon boj 1991 --- ...\353\246\254 \354\210\234\355\232\214.cpp" | 119 ++++++++++++++++++ 1 file changed, 119 insertions(+) create mode 100644 "Moonchaeyeon/1991_\355\212\270\353\246\254 \354\210\234\355\232\214.cpp" diff --git "a/Moonchaeyeon/1991_\355\212\270\353\246\254 \354\210\234\355\232\214.cpp" "b/Moonchaeyeon/1991_\355\212\270\353\246\254 \354\210\234\355\232\214.cpp" new file mode 100644 index 0000000..ccd5dde --- /dev/null +++ "b/Moonchaeyeon/1991_\355\212\270\353\246\254 \354\210\234\355\232\214.cpp" @@ -0,0 +1,119 @@ +#include +#include ; +using namespace std; +int N; + +template +class Node { +private: + T value; + Node* left; + Node* right; + Node* root; +public: + Node() : value(NULL), left(nullptr), right(nullptr), root(nullptr) {}; + Node(T _value) : value(_value), left(nullptr), right(nullptr), root(nullptr) {}; + Node(T _value, Node* _left, Node* _right) : value(_value), left(_left), right(_right), root(nullptr) { + if (_left != nullptr) + _left->root = this; + if (_right != nullptr) + _right->root = this; + }; + + void SetValue(T _value) { this->value = _value; } + void SetLeft(Node* node) { + this->left = node; + if (node != nullptr) + node->SetRoot(this); + } + void SetRight(Node* node) { + this->right = node; + if (node != nullptr) + node->SetRoot(this); + } + void SetRoot(Node* node) { this->root = node; } + Node* GetLeft() { return left; } + Node* GetRight() { return right; } + T GetValue() { return value; } +}; + +// Node ã±â +template +void FindNode(Node* node, T value, Node*& result, bool& found) { + if (node != nullptr && !found) { + if (node->GetValue() == value) { + result = node; + found = true; + } + else { + FindNode(node->GetLeft(), value, result, found); + FindNode(node->GetRight(), value, result, found); + } + } +} + +// ÀüÀ§ ¼øÈ¸ (·çÆ®) (¿ÞÂÊ ÀÚ½Ä) (¿À¸¥ÂÊ ÀÚ½Ä) +template +void Preorder(Node* node) { + if (node != nullptr) { + cout << node->GetValue(); + Preorder(node->GetLeft()); + Preorder(node->GetRight()); + } +} + +// ÁßÀ§ ¼øÈ¸ (¿ÞÂÊ ÀÚ½Ä) (·çÆ®) (¿À¸¥ÂÊ ÀÚ½Ä) +template +void Inorder(Node* node) { + if (node != nullptr) { + Inorder(node->GetLeft()); + cout << node->GetValue(); + Inorder(node->GetRight()); + } +} + +// ÈÄÀ§ ¼øÈ¸ (¿ÞÂÊ ÀÚ½Ä) (¿À¸¥ÂÊ ÀÚ½Ä) (·çÆ®) +template +void Postorder(Node* node) { + if (node != nullptr) { + Postorder(node->GetLeft()); + Postorder(node->GetRight()); + cout << node->GetValue(); + } +} + +int main() { + cin >> N; + + Node* root = nullptr; + char root_v, left_v, right_v; + + for (int i = 0; i < N; i++) { + Node* currNode; + Node* left; + Node* right; + + cin >> root_v >> left_v >> right_v; + + left = ((left_v != '.') ? new Node(left_v) : nullptr); + right = ((right_v != '.') ? new Node(right_v) : nullptr); + + if (i == 0) // ù¹øÂ° ¼ø¼­ÀÏ ¶§ + root = new Node(root_v, left, right); + else { // ù¹øÂ° ¼ø¼­°¡ ¾Æ´Ò ¶§ + bool found = false; + FindNode(root, root_v, currNode, found); + currNode->SetLeft(left); + currNode->SetRight(right); + } + } + + Preorder(root); + cout << '\n'; + Inorder(root); + cout << '\n'; + Postorder(root); + cout << '\n'; + + return 0; +} \ No newline at end of file From d8902f3fe91b7b4cd529ba8dc6bcff4c8f255737 Mon Sep 17 00:00:00 2001 From: MoonChaeyeon Date: Sat, 5 Feb 2022 23:59:50 +0900 Subject: [PATCH 07/11] code: Moonchaeyeon boj 5639 --- ...\354\203\211 \355\212\270\353\246\254.cpp" | 61 +++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 "Moonchaeyeon/5639_\354\235\264\354\247\204 \352\262\200\354\203\211 \355\212\270\353\246\254.cpp" diff --git "a/Moonchaeyeon/5639_\354\235\264\354\247\204 \352\262\200\354\203\211 \355\212\270\353\246\254.cpp" "b/Moonchaeyeon/5639_\354\235\264\354\247\204 \352\262\200\354\203\211 \355\212\270\353\246\254.cpp" new file mode 100644 index 0000000..93276af --- /dev/null +++ "b/Moonchaeyeon/5639_\354\235\264\354\247\204 \352\262\200\354\203\211 \355\212\270\353\246\254.cpp" @@ -0,0 +1,61 @@ +#include +using namespace std; + +template +struct Node { + Node* left; + Node* right; + T value; +}; + +template +class BinarySearchTree { +private: + Node* root; +public: + BinarySearchTree() : root(nullptr) {}; + + void AddNode(T _value) { + Node* newNode = new Node(); // »õ·Î Ãß°¡ÇÒ ³ëµå + newNode->value = _value; + + if (root == nullptr) + root = newNode; + else { + Node* findRoot = root; // ¾î´À ºÎ¸ðÀÇ ÀÚ½ÄÀ¸·Î »ðÀԵǾî¾ß ÇÏ´ÂÁö + Node* tempRoot = root; // findRootº¸´Ù ¸ÕÀú ¹ØÀ¸·Î ³»·Á°¡¼­ °Ë»çÇØÁÖ´Â ¾Ö + + while (tempRoot != nullptr) { + findRoot = tempRoot; + if (_value < tempRoot->value) + tempRoot = tempRoot->left; + else tempRoot = tempRoot->right; + } + + if (_value < findRoot->value) + findRoot->left = newNode; + else findRoot->right = newNode; + } + } + + Node* GetRoot() { return root; } + + void Postorder(Node* node) { + if (node != nullptr) { + Postorder(node->left); + Postorder(node->right); + cout << node->value << '\n'; + } + } +}; + +int main() { + BinarySearchTree* BST = new BinarySearchTree(); + int k; + while (cin >> k) + BST->AddNode(k); + + BST->Postorder(BST->GetRoot()); + + return 0; +} \ No newline at end of file From 915f92f5b8247c3ce529de8e21dd3d2fa2bddb54 Mon Sep 17 00:00:00 2001 From: MoonChaeyeon Date: Sun, 6 Feb 2022 00:20:17 +0900 Subject: [PATCH 08/11] code: Moonchaeyeon boj 11279 --- ...\354\265\234\353\214\200 \355\236\231.cpp" | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 "Moonchaeyeon/11279_\354\265\234\353\214\200 \355\236\231.cpp" diff --git "a/Moonchaeyeon/11279_\354\265\234\353\214\200 \355\236\231.cpp" "b/Moonchaeyeon/11279_\354\265\234\353\214\200 \355\236\231.cpp" new file mode 100644 index 0000000..b0fc04b --- /dev/null +++ "b/Moonchaeyeon/11279_\354\265\234\353\214\200 \355\236\231.cpp" @@ -0,0 +1,27 @@ +#include +#include +using namespace std; +int N; + +int main() { + cin.tie(NULL); + ios_base::sync_with_stdio(false); + + cin >> N; + priority_queue pq; + int num; + for (int i = 0; i < N; i++) { + cin >> num; + if (num) // 0ÀÌ ¾Æ´Ñ ¼ýÀÚ°¡ ÀԷµǾú´Ù¸é + pq.push(num); + else { // 0ÀÌ ÀԷµǾú´Ù¸é + if (pq.size()) { // ±æÀ̰¡ 0ÀÌ ¾Æ´Ï¶ó¸é + cout << pq.top() << '\n'; + pq.pop(); + } + else cout << 0 << '\n'; // ±æÀ̰¡ 0ÀÏ ¶§ + } + } + + return 0; +} \ No newline at end of file From 06269951932d857fc44cd8df5983b5cede747e07 Mon Sep 17 00:00:00 2001 From: MoonChaeyeon Date: Sun, 6 Feb 2022 01:06:37 +0900 Subject: [PATCH 09/11] code: Moonchaeyeon boj 11286 --- ...\353\214\223\352\260\222 \355\236\231.cpp" | 47 +++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 "Moonchaeyeon/11286_\354\240\210\353\214\223\352\260\222 \355\236\231.cpp" diff --git "a/Moonchaeyeon/11286_\354\240\210\353\214\223\352\260\222 \355\236\231.cpp" "b/Moonchaeyeon/11286_\354\240\210\353\214\223\352\260\222 \355\236\231.cpp" new file mode 100644 index 0000000..93428bb --- /dev/null +++ "b/Moonchaeyeon/11286_\354\240\210\353\214\223\352\260\222 \355\236\231.cpp" @@ -0,0 +1,47 @@ +#include +#include +#include +using namespace std; +int N; + +int main() { + cin.tie(NULL); + ios_base::sync_with_stdio(false); + + priority_queue, greater> positive; // ÃÖ¼Ò Èü + priority_queue negative; // ÃÖ´ë Èü + cin >> N; + + int num; + for (int i = 0; i < N; i++) { + cin >> num; + + // 1) ¾ç¼öÀÏ ¶§ + if (num > 0) positive.push(num); + + // 2) À½¼öÀÏ ¶§ + else if (num < 0) negative.push(num); + + // 3) 0ÀÏ ¶§ + else { + if (negative.size()) { // À½¼ö°¡ ÀÖÀ» ¶§ + if (positive.size() && (positive.top() < -negative.top())) { // ¾ç¼ö°¡ Á¸ÀçÇϰí, ¾ç¼öÀÇ Àý´ñ°ªÀÌ ´õ ÀÛ´Ù¸é -> ¾ç¼öÂÊ print/pop + cout << positive.top() << '\n'; + positive.pop(); + } + else { // ¾ç¼ö°¡ Á¸ÀçÇÏÁö ¾Ê°Å³ª, À½¼öÀÇ Àý´ñ°ªÀÌ ´õ À۰ųª °°´Ù¸é -> À½¼ö print/pop + cout << negative.top() << '\n'; + negative.pop(); + } + } + else { // À½¼ö°¡ Á¸ÀçÇÏÁö ¾ÊÀ» ¶§ + if (positive.size()) { // ¾ç¼ö°¡ Á¸ÀçÇÑ´Ù¸é -> ¾ç¼ö print/pop + cout << positive.top() << '\n'; + positive.pop(); + } + else cout << 0 << '\n'; // ¾Æ¹«°Íµµ Á¸ÀçÇÏÁö ¾Ê´Â´Ù¸é -> 0 print + } + } + } + return 0; +} \ No newline at end of file From 143d061abe3809c60b4b4220e6c1d56d649c802f Mon Sep 17 00:00:00 2001 From: MoonChaeyeon Date: Sun, 6 Feb 2022 01:23:29 +0900 Subject: [PATCH 10/11] code: Moonchaeyeon boj 15903 --- ...\354\262\264 \353\206\200\354\235\264.cpp" | 43 +++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 "Moonchaeyeon/15903_\354\271\264\353\223\234 \355\225\251\354\262\264 \353\206\200\354\235\264.cpp" diff --git "a/Moonchaeyeon/15903_\354\271\264\353\223\234 \355\225\251\354\262\264 \353\206\200\354\235\264.cpp" "b/Moonchaeyeon/15903_\354\271\264\353\223\234 \355\225\251\354\262\264 \353\206\200\354\235\264.cpp" new file mode 100644 index 0000000..ba13af8 --- /dev/null +++ "b/Moonchaeyeon/15903_\354\271\264\353\223\234 \355\225\251\354\262\264 \353\206\200\354\235\264.cpp" @@ -0,0 +1,43 @@ +#include +#include +#include +using namespace std; +int n, m; + +int main() { + cin.tie(NULL); + ios_base::sync_with_stdio(false); + + priority_queue, greater> cards; + int i; + + cin >> n >> m; + + long long c; + for (i = 0; i < n; i++) { + cin >> c; + cards.push(c); + } + + unsigned long long min1, min2, plus; + for (i = 0; i < m; i++) { + min1 = cards.top(); + cards.pop(); + min2 = cards.top(); + cards.pop(); + plus = min1 + min2; + cards.push(plus); + cards.push(plus); + } + + int len = cards.size(); + unsigned long long result = 0; + for (i = 0; i < len; i++) { + result += cards.top(); + cards.pop(); + } + + cout << result << '\n'; + + return 0; +} \ No newline at end of file From c7bcbc2817c9e7b398eac40e7604b94166d82a02 Mon Sep 17 00:00:00 2001 From: MoonChaeyeon Date: Sun, 6 Feb 2022 02:42:33 +0900 Subject: [PATCH 11/11] code: Moonchaeyeon boj 2075 --- ...354\247\270 \355\201\260 \354\210\230.cpp" | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 "Moonchaeyeon/2075_N\353\262\210\354\247\270 \355\201\260 \354\210\230.cpp" diff --git "a/Moonchaeyeon/2075_N\353\262\210\354\247\270 \355\201\260 \354\210\230.cpp" "b/Moonchaeyeon/2075_N\353\262\210\354\247\270 \355\201\260 \354\210\230.cpp" new file mode 100644 index 0000000..6526ec1 --- /dev/null +++ "b/Moonchaeyeon/2075_N\353\262\210\354\247\270 \355\201\260 \354\210\230.cpp" @@ -0,0 +1,28 @@ +#include +#include +#include +using namespace std; +int N; + +int main() { + cin.tie(NULL); + ios_base::sync_with_stdio(false); + int i, j; + cin >> N; + + priority_queue, greater> pq; // min heap + + int value; + for (i = 0; i < N; i++) { + for (j = 0; j < N; j++) { + cin >> value; + pq.push(value); + if (pq.size() > N) // Nº¸´Ù Ä¿Áö¸é + pq.pop(); // Áö±Ý °¡Àå ÀÛÀº °ªÀ» pop -> °³¼ö¸¦ N°³·Î ¸ÂÃã + } + } + + cout << pq.top() << '\n'; // Áö±Ý °¡Àå Å« °ªÀÌ N¹øÂ°·Î °¡Àå Å« °ªÀÓ + + return 0; +} \ No newline at end of file