{"id":34328,"date":"2024-11-01T09:26:54","date_gmt":"2024-11-01T09:26:54","guid":{"rendered":"http:\/\/atmokpo.com\/w\/?p=34328"},"modified":"2024-11-01T10:57:41","modified_gmt":"2024-11-01T10:57:41","slug":"c-coding-test-course-finding-minimum-value-2-2","status":"publish","type":"post","link":"https:\/\/atmokpo.com\/w\/34328\/","title":{"rendered":"C++ Coding Test Course, Finding Minimum Value 2"},"content":{"rendered":"<p><body><\/p>\n<p>One of the most common problems encountered in coding tests is finding the minimum or maximum value in an array that meets given conditions. In this tutorial, we will introduce a problem titled &#8216;Finding the Second Minimum&#8217; which is frequently tested in actual coding tests, and we will explain in detail how to solve it using C++.<\/p>\n<h2>Problem Description<\/h2>\n<p>This is a problem of finding and printing the minimum value that satisfies specific conditions from a given array.<\/p>\n<h3>Problem Definition<\/h3>\n<p>An integer N is given, along with an array A that contains N integers. Write a program that outputs the second smallest value among all elements of the array.<\/p>\n<h3>Input Format<\/h3>\n<p>The first line contains an integer N (2 \u2264 N \u2264 100,000). The second line contains N integers separated by spaces. Each integer is between -1,000,000,000 and 1,000,000,000.<\/p>\n<h3>Output Format<\/h3>\n<p>Output the second smallest integer. If there is no second smallest integer, output &#8220;No Second Minimum&#8221;.<\/p>\n<h3>Example Input and Output<\/h3>\n<div class=\"example-input\">\n<strong>Input Example 1:<\/strong><br \/>\n        5<br \/>\n        1 2 3 4 5<br \/>\n<strong>Output Example 1:<\/strong><br \/>\n        2\n    <\/div>\n<div class=\"example-input\">\n<strong>Input Example 2:<\/strong><br \/>\n        3<br \/>\n        1000000000 1000000000 1000000000<br \/>\n<strong>Output Example 2:<\/strong><br \/>\n        No Second Minimum\n    <\/div>\n<h2>Approach to Problem Solving<\/h2>\n<p>To solve this problem, it is essential to understand how to sort the elements of the array and how to handle duplicates well. Since we want to find the second smallest value, we can simply sort the array and then extract the second value from the unique values.<\/p>\n<h3>Algorithm Steps<\/h3>\n<ol>\n<li>Receive the array as input and sort it.<\/li>\n<li>Remove duplicates from the sorted array to create a list of unique values.<\/li>\n<li>Check if the second minimum value exists in the list of unique values and print it.<\/li>\n<\/ol>\n<h2>C++ Implementation<\/h2>\n<p>Now, let&#8217;s implement the above algorithm in C++. Below is the C++ code:<\/p>\n<pre><code>#include &lt;iostream&gt;\n#include &lt;vector&gt;\n#include &lt;algorithm&gt;\n#include &lt;set&gt;\n\nusing namespace std;\n\nint main() {\n    int N;\n    cin &gt;&gt; N;\n\n    vector&lt;int&gt; A(N);\n    \n    for (int i = 0; i &lt; N; i++) {\n        cin &gt;&gt; A[i];\n    }\n\n    \/\/ Sort the array\n    sort(A.begin(), A.end());\n\n    \/\/ Set to store unique values\n    set&lt;int&gt; uniqueValues(A.begin(), A.end());\n\n    \/\/ Find the second smallest value\n    if (uniqueValues.size() &lt; 2) {\n        cout &lt;&lt; \"No Second Minimum\" &lt;&lt; endl;\n    } else {\n        auto it = uniqueValues.begin();\n        it++;\n        cout &lt;&lt; *it &lt;&lt; endl;\n    }\n\n    return 0;\n}\n    <\/code><\/pre>\n<h2>Code Explanation<\/h2>\n<ul>\n<li><code>#include &lt;iostream&gt;<\/code>: Library for input and output.<\/li>\n<li><code>#include &lt;vector&gt;<\/code>: Enables the use of dynamic arrays.<\/li>\n<li><code>#include &lt;algorithm&gt;<\/code>: Allows the use of sorting functions and other algorithm-related functions.<\/li>\n<li><code>#include &lt;set&gt;<\/code>: Library for using sets (a data structure that does not allow duplicates).<\/li>\n<li>The code takes user input for the size of the array N, followed by N integers.<\/li>\n<li><code>sort(A.begin(), A.end());<\/code>: Sorts the array.<\/li>\n<li><code>set&lt;int&gt; uniqueValues(A.begin(), A.end());<\/code>: Converts the sorted array into a set to remove duplicate values.<\/li>\n<li>Checks the size of the set to determine if the second smallest value exists, then outputs the result.<\/li>\n<\/ul>\n<h2>Time Complexity<\/h2>\n<p>The time complexity of the above algorithm is as follows:<\/p>\n<ul>\n<li>Time taken for sorting: <code>O(N log N)<\/code><\/li>\n<li>Removing duplicates and finding the second value: <code>O(N)<\/code> (checking the size of the set can be done in constant time)<\/li>\n<li>Total time complexity: <code>O(N log N)<\/code>, mainly due to the cost of sorting.<\/li>\n<\/ul>\n<h2>Conclusion<\/h2>\n<p>In this tutorial, we learned how to find the second smallest value in an array using C++. If you have understood the structure of sorting the given array and removing duplicate values to find the second minimum value, it will greatly help you solve similar problems. Practice solving various array manipulation problems. Good job!<\/p>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"<p>One of the most common problems encountered in coding tests is finding the minimum or maximum value in an array that meets given conditions. In this tutorial, we will introduce a problem titled &#8216;Finding the Second Minimum&#8217; which is frequently tested in actual coding tests, and we will explain in detail how to solve it &hellip; <a href=\"https:\/\/atmokpo.com\/w\/34328\/\" class=\"more-link\">\ub354 \ubcf4\uae30<span class=\"screen-reader-text\"> &#8220;C++ Coding Test Course, Finding Minimum Value 2&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[111],"tags":[],"class_list":["post-34328","post","type-post","status-publish","format-standard","hentry","category-c-coding-test-tutorials-2"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>C++ Coding Test Course, Finding Minimum Value 2 - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/atmokpo.com\/w\/34328\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"C++ Coding Test Course, Finding Minimum Value 2 - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"og:description\" content=\"One of the most common problems encountered in coding tests is finding the minimum or maximum value in an array that meets given conditions. In this tutorial, we will introduce a problem titled &#8216;Finding the Second Minimum&#8217; which is frequently tested in actual coding tests, and we will explain in detail how to solve it &hellip; \ub354 \ubcf4\uae30 &quot;C++ Coding Test Course, Finding Minimum Value 2&quot;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/atmokpo.com\/w\/34328\/\" \/>\n<meta property=\"og:site_name\" content=\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"article:published_time\" content=\"2024-11-01T09:26:54+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-11-01T10:57:41+00:00\" \/>\n<meta name=\"author\" content=\"root\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@bebubo4\" \/>\n<meta name=\"twitter:site\" content=\"@bebubo4\" \/>\n<meta name=\"twitter:label1\" content=\"\uae00\uc4f4\uc774\" \/>\n\t<meta name=\"twitter:data1\" content=\"root\" \/>\n\t<meta name=\"twitter:label2\" content=\"\uc608\uc0c1 \ub418\ub294 \ud310\ub3c5 \uc2dc\uac04\" \/>\n\t<meta name=\"twitter:data2\" content=\"3\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/atmokpo.com\/w\/34328\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/34328\/\"},\"author\":{\"name\":\"root\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7\"},\"headline\":\"C++ Coding Test Course, Finding Minimum Value 2\",\"datePublished\":\"2024-11-01T09:26:54+00:00\",\"dateModified\":\"2024-11-01T10:57:41+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/atmokpo.com\/w\/34328\/\"},\"wordCount\":464,\"publisher\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\"},\"articleSection\":[\"C++ Coding Test Tutorials\"],\"inLanguage\":\"ko-KR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/atmokpo.com\/w\/34328\/\",\"url\":\"https:\/\/atmokpo.com\/w\/34328\/\",\"name\":\"C++ Coding Test Course, Finding Minimum Value 2 - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#website\"},\"datePublished\":\"2024-11-01T09:26:54+00:00\",\"dateModified\":\"2024-11-01T10:57:41+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/atmokpo.com\/w\/34328\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/atmokpo.com\/w\/34328\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/atmokpo.com\/w\/34328\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\ud648\",\"item\":\"https:\/\/atmokpo.com\/w\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"C++ Coding Test Course, Finding Minimum Value 2\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/atmokpo.com\/w\/#website\",\"url\":\"https:\/\/atmokpo.com\/w\/\",\"name\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/atmokpo.com\/w\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ko-KR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\",\"name\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"url\":\"https:\/\/atmokpo.com\/w\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png\",\"contentUrl\":\"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png\",\"width\":400,\"height\":400,\"caption\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\"},\"image\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/bebubo4\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7\",\"name\":\"root\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g\",\"caption\":\"root\"},\"sameAs\":[\"http:\/\/atmokpo.com\/w\"],\"url\":\"https:\/\/atmokpo.com\/w\/author\/root\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"C++ Coding Test Course, Finding Minimum Value 2 - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/atmokpo.com\/w\/34328\/","og_locale":"ko_KR","og_type":"article","og_title":"C++ Coding Test Course, Finding Minimum Value 2 - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","og_description":"One of the most common problems encountered in coding tests is finding the minimum or maximum value in an array that meets given conditions. In this tutorial, we will introduce a problem titled &#8216;Finding the Second Minimum&#8217; which is frequently tested in actual coding tests, and we will explain in detail how to solve it &hellip; \ub354 \ubcf4\uae30 \"C++ Coding Test Course, Finding Minimum Value 2\"","og_url":"https:\/\/atmokpo.com\/w\/34328\/","og_site_name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","article_published_time":"2024-11-01T09:26:54+00:00","article_modified_time":"2024-11-01T10:57:41+00:00","author":"root","twitter_card":"summary_large_image","twitter_creator":"@bebubo4","twitter_site":"@bebubo4","twitter_misc":{"\uae00\uc4f4\uc774":"root","\uc608\uc0c1 \ub418\ub294 \ud310\ub3c5 \uc2dc\uac04":"3\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/atmokpo.com\/w\/34328\/#article","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/34328\/"},"author":{"name":"root","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7"},"headline":"C++ Coding Test Course, Finding Minimum Value 2","datePublished":"2024-11-01T09:26:54+00:00","dateModified":"2024-11-01T10:57:41+00:00","mainEntityOfPage":{"@id":"https:\/\/atmokpo.com\/w\/34328\/"},"wordCount":464,"publisher":{"@id":"https:\/\/atmokpo.com\/w\/#organization"},"articleSection":["C++ Coding Test Tutorials"],"inLanguage":"ko-KR"},{"@type":"WebPage","@id":"https:\/\/atmokpo.com\/w\/34328\/","url":"https:\/\/atmokpo.com\/w\/34328\/","name":"C++ Coding Test Course, Finding Minimum Value 2 - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/#website"},"datePublished":"2024-11-01T09:26:54+00:00","dateModified":"2024-11-01T10:57:41+00:00","breadcrumb":{"@id":"https:\/\/atmokpo.com\/w\/34328\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/atmokpo.com\/w\/34328\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/atmokpo.com\/w\/34328\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\ud648","item":"https:\/\/atmokpo.com\/w\/en\/"},{"@type":"ListItem","position":2,"name":"C++ Coding Test Course, Finding Minimum Value 2"}]},{"@type":"WebSite","@id":"https:\/\/atmokpo.com\/w\/#website","url":"https:\/\/atmokpo.com\/w\/","name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","description":"","publisher":{"@id":"https:\/\/atmokpo.com\/w\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/atmokpo.com\/w\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ko-KR"},{"@type":"Organization","@id":"https:\/\/atmokpo.com\/w\/#organization","name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","url":"https:\/\/atmokpo.com\/w\/","logo":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/","url":"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png","contentUrl":"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png","width":400,"height":400,"caption":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8"},"image":{"@id":"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/bebubo4"]},{"@type":"Person","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7","name":"root","image":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g","caption":"root"},"sameAs":["http:\/\/atmokpo.com\/w"],"url":"https:\/\/atmokpo.com\/w\/author\/root\/"}]}},"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/34328","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/comments?post=34328"}],"version-history":[{"count":1,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/34328\/revisions"}],"predecessor-version":[{"id":34329,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/34328\/revisions\/34329"}],"wp:attachment":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/media?parent=34328"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/categories?post=34328"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/tags?post=34328"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}