{"id":33656,"date":"2024-11-01T09:19:02","date_gmt":"2024-11-01T09:19:02","guid":{"rendered":"http:\/\/atmokpo.com\/w\/?p=33656"},"modified":"2024-11-01T11:47:15","modified_gmt":"2024-11-01T11:47:15","slug":"python-coding-test-course-finding-building-order","status":"publish","type":"post","link":"https:\/\/atmokpo.com\/w\/33656\/","title":{"rendered":"Python Coding Test Course, Finding Building Order"},"content":{"rendered":"<p><body><\/p>\n<div class=\"problem\">\n<h2>Problem Description<\/h2>\n<p>This is a problem to find the appropriate order to reconstruct buildings given the heights of buildings on a long street. Each building is represented by an array of heights, and based on that array, we need to determine the order in which those buildings were erected.<\/p>\n<p>For example, if the heights of the buildings are [3, 1, 4, 1, 5], the order in which they should be built, starting from the tallest building, is as follows.<\/p>\n<ul>\n<li>Building 1: Height 5<\/li>\n<li>Building 2: Height 4<\/li>\n<li>Building 3: Height 3<\/li>\n<li>Building 4: Height 1<\/li>\n<li>Building 5: Height 1<\/li>\n<\/ul>\n<h3>Input<\/h3>\n<p>An integer array <code>heights<\/code> will be given. Each element represents the height of a building.<\/p>\n<h3>Output<\/h3>\n<p>You must output the order in which the buildings should be erected in the form of a list of indices.<\/p>\n<h3>Example<\/h3>\n<pre>\nInput: heights = [3, 1, 4, 1, 5]\nOutput: [4, 3, 0, 1, 2]\n<\/pre>\n<\/div>\n<div class=\"solution\">\n<h2>Solution Process<\/h2>\n<p>To solve this problem, we need to sort the building indices based on their height information. Below are the steps of the solution process.<\/p>\n<h3>Step 1: Input<\/h3>\n<p>First, we need to take the heights of the given buildings as input. We can declare a <code>heights<\/code> array or receive input through a function.<\/p>\n<h3>Step 2: Create Height-Index Pairs<\/h3>\n<p>Create a list of pairs containing each building&#8217;s height and index. In Python, we can easily create a list that includes indices using the <code>enumerate<\/code> function.<\/p>\n<pre><code>building_pairs = list(enumerate(heights))<\/code><\/pre>\n<h3>Step 3: Sorting<\/h3>\n<p>Now we need to sort the list of buildings based on height. We can sort the list in descending order of heights using the <code>sorted<\/code> function. In this case, we specify the height as the <code>key<\/code> argument for sorting.<\/p>\n<pre><code>sorted_buildings = sorted(building_pairs, key=lambda x: x[1], reverse=True)<\/code><\/pre>\n<h3>Step 4: Extracting Results<\/h3>\n<p>From the sorted list, extract the indices to create a result list. This can be easily done using list comprehension.<\/p>\n<pre><code>result = [index for index, height in sorted_buildings]<\/code><\/pre>\n<h3>Step 5: Output the Result<\/h3>\n<p>Finally, we need to print the order of the buildings. All the related codes can be integrated and provided in the form of a function.<\/p>\n<h3>Final Code<\/h3>\n<pre><code>def building_order(heights):\n    building_pairs = list(enumerate(heights))\n    sorted_buildings = sorted(building_pairs, key=lambda x: x[1], reverse=True)\n    result = [index for index, height in sorted_buildings]\n    return result\n\n# Example usage\nheights = [3, 1, 4, 1, 5]\nprint(building_order(heights))\n<\/code><\/pre>\n<h3>Result Check<\/h3>\n<p>Running the code above will output <strong>[4, 3, 0, 1, 2]<\/strong>, which represents the correct order based on the provided building heights.<\/p>\n<h4>Result Analysis<\/h4>\n<p>The indices were paired and sorted according to the heights in the array, thereby effectively deriving the order of building construction.<\/p>\n<\/div>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Problem Description This is a problem to find the appropriate order to reconstruct buildings given the heights of buildings on a long street. Each building is represented by an array of heights, and based on that array, we need to determine the order in which those buildings were erected. For example, if the heights of &hellip; <a href=\"https:\/\/atmokpo.com\/w\/33656\/\" class=\"more-link\">\ub354 \ubcf4\uae30<span class=\"screen-reader-text\"> &#8220;Python Coding Test Course, Finding Building Order&#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":[145],"tags":[],"class_list":["post-33656","post","type-post","status-publish","format-standard","hentry","category-python-coding-test"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Python Coding Test Course, Finding Building Order - \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\/33656\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Python Coding Test Course, Finding Building Order - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"og:description\" content=\"Problem Description This is a problem to find the appropriate order to reconstruct buildings given the heights of buildings on a long street. Each building is represented by an array of heights, and based on that array, we need to determine the order in which those buildings were erected. For example, if the heights of &hellip; \ub354 \ubcf4\uae30 &quot;Python Coding Test Course, Finding Building Order&quot;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/atmokpo.com\/w\/33656\/\" \/>\n<meta property=\"og:site_name\" content=\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"article:published_time\" content=\"2024-11-01T09:19:02+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-11-01T11:47:15+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=\"2\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/atmokpo.com\/w\/33656\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/33656\/\"},\"author\":{\"name\":\"root\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7\"},\"headline\":\"Python Coding Test Course, Finding Building Order\",\"datePublished\":\"2024-11-01T09:19:02+00:00\",\"dateModified\":\"2024-11-01T11:47:15+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/atmokpo.com\/w\/33656\/\"},\"wordCount\":345,\"publisher\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\"},\"articleSection\":[\"Python Coding Test\"],\"inLanguage\":\"ko-KR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/atmokpo.com\/w\/33656\/\",\"url\":\"https:\/\/atmokpo.com\/w\/33656\/\",\"name\":\"Python Coding Test Course, Finding Building Order - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#website\"},\"datePublished\":\"2024-11-01T09:19:02+00:00\",\"dateModified\":\"2024-11-01T11:47:15+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/atmokpo.com\/w\/33656\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/atmokpo.com\/w\/33656\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/atmokpo.com\/w\/33656\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\ud648\",\"item\":\"https:\/\/atmokpo.com\/w\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Python Coding Test Course, Finding Building Order\"}]},{\"@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":"Python Coding Test Course, Finding Building Order - \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\/33656\/","og_locale":"ko_KR","og_type":"article","og_title":"Python Coding Test Course, Finding Building Order - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","og_description":"Problem Description This is a problem to find the appropriate order to reconstruct buildings given the heights of buildings on a long street. Each building is represented by an array of heights, and based on that array, we need to determine the order in which those buildings were erected. For example, if the heights of &hellip; \ub354 \ubcf4\uae30 \"Python Coding Test Course, Finding Building Order\"","og_url":"https:\/\/atmokpo.com\/w\/33656\/","og_site_name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","article_published_time":"2024-11-01T09:19:02+00:00","article_modified_time":"2024-11-01T11:47:15+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":"2\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/atmokpo.com\/w\/33656\/#article","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/33656\/"},"author":{"name":"root","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7"},"headline":"Python Coding Test Course, Finding Building Order","datePublished":"2024-11-01T09:19:02+00:00","dateModified":"2024-11-01T11:47:15+00:00","mainEntityOfPage":{"@id":"https:\/\/atmokpo.com\/w\/33656\/"},"wordCount":345,"publisher":{"@id":"https:\/\/atmokpo.com\/w\/#organization"},"articleSection":["Python Coding Test"],"inLanguage":"ko-KR"},{"@type":"WebPage","@id":"https:\/\/atmokpo.com\/w\/33656\/","url":"https:\/\/atmokpo.com\/w\/33656\/","name":"Python Coding Test Course, Finding Building Order - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/#website"},"datePublished":"2024-11-01T09:19:02+00:00","dateModified":"2024-11-01T11:47:15+00:00","breadcrumb":{"@id":"https:\/\/atmokpo.com\/w\/33656\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/atmokpo.com\/w\/33656\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/atmokpo.com\/w\/33656\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\ud648","item":"https:\/\/atmokpo.com\/w\/en\/"},{"@type":"ListItem","position":2,"name":"Python Coding Test Course, Finding Building Order"}]},{"@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\/33656","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=33656"}],"version-history":[{"count":1,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/33656\/revisions"}],"predecessor-version":[{"id":33657,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/33656\/revisions\/33657"}],"wp:attachment":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/media?parent=33656"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/categories?post=33656"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/tags?post=33656"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}