{"id":34656,"date":"2024-11-01T09:30:32","date_gmt":"2024-11-01T09:30:32","guid":{"rendered":"http:\/\/atmokpo.com\/w\/?p=34656"},"modified":"2024-11-01T11:27:07","modified_gmt":"2024-11-01T11:27:07","slug":"swift-coding-test-course-lets-try-ddr","status":"publish","type":"post","link":"https:\/\/atmokpo.com\/w\/34656\/","title":{"rendered":"Swift Coding Test Course, Let&#8217;s try DDR"},"content":{"rendered":"<p><body><\/p>\n<p>Hello, everyone! Today we will tackle an algorithm problem implemented in Swift. The topic is an algorithmic problem that arises in the &#8216;DDR (Dance Dance Revolution)&#8217; game. This problem will be very useful for improving your understanding of Swift programming and algorithms. Let&#8217;s explain the problem first and then solve it together.<\/p>\n<h2>Problem Description<\/h2>\n<p>The problem is as follows:<\/p>\n<div>\n<h3>Problem: DDR Pattern Analysis<\/h3>\n<p>In the DDR game, players score points by stepping on the arrows that appear on the screen. Each arrow appears at 1-second intervals, and when a pattern is given, write an algorithm to calculate how many arrows can be accurately stepped on within the given time.<\/p>\n<p>The following information will be provided as input:<\/p>\n<ul>\n<li>n: Total number of arrows (1 \u2264 n \u2264 1000)<\/li>\n<li>t: Given time (seconds, 1 \u2264 t \u2264 100)<\/li>\n<li>Pattern array: An array listing the activation times of each arrow (each item is 1 \u2264 item \u2264 t)<\/li>\n<\/ul>\n<p>Write a program that calculates and outputs how many arrows can be stepped on within the given time based on the input pattern.<\/p>\n<\/div>\n<h2>Example Input<\/h2>\n<pre>\n5 3\n1 2 3 4 5\n<\/pre>\n<h2>Example Output<\/h2>\n<pre>\n3\n<\/pre>\n<h2>Solution Process<\/h2>\n<p>Now let&#8217;s approach the problem step by step. Follow the processes below to understand the solution method.<\/p>\n<h3>Step 1: Input Handling<\/h3>\n<p>First, we need to read the number of arrows, the time limit, and the activation times of the arrows given in the input. The input data will be stored in an array. For example, in Swift, you can do the following:<\/p>\n<pre><code>import Foundation\n\n\/\/ Input handling\nlet input = readLine()!.split(separator: \" \").map { Int($0)! }\nlet n = input[0]  \/\/ Total number of arrows\nlet t = input[1]  \/\/ Given time (seconds)\nlet arrows = readLine()!.split(separator: \" \").map { Int($0)! } \/\/ Arrow activation times\n<\/code><\/pre>\n<h3>Step 2: Understanding the Problem<\/h3>\n<p>The task is to find out how many arrows can be stepped on within the given time &#8216;t&#8217;. In other words, we need to count the number of arrows in the arrow arrangement array from 1 to t seconds.<\/p>\n<h3>Step 3: Sorting the Array and Validating<\/h3>\n<p>After receiving the input, we need to sort the arrow activation time array. This will simplify the counting based on valid time.<\/p>\n<pre><code>let sortedArrows = arrows.sorted()\n<\/code><\/pre>\n<h3>Step 4: Writing the Counting Logic<\/h3>\n<p>Now we simply need to count the number of arrows that satisfy the conditions. The method for counting how many arrows correspond to the given time &#8216;t&#8217; is very straightforward. We can increment the count each time we encounter an arrow that is less than or equal to t while traversing the array.<\/p>\n<pre><code>var count = 0\nfor arrow in sortedArrows {\n    if arrow &lt;= t {\n        count += 1\n    } else {\n        break \/\/ No need to check further\n    }\n}\n<\/code><\/pre>\n<h3>Step 5: Output the Result<\/h3>\n<p>After checking all the arrows, we print the count to the console.<\/p>\n<pre><code>print(count)\n<\/code><\/pre>\n<h2>Complete Code<\/h2>\n<p>By integrating all the above steps, we can write a program as follows:<\/p>\n<pre><code>import Foundation\n\n\/\/ Input handling\nlet input = readLine()!.split(separator: \" \").map { Int($0)! }\nlet n = input[0]  \/\/ Total number of arrows\nlet t = input[1]  \/\/ Given time (seconds)\nlet arrows = readLine()!.split(separator: \" \").map { Int($0)! } \/\/ Arrow activation times\n\n\/\/ Sorting the arrows\nlet sortedArrows = arrows.sorted()\n\n\/\/ Count variable\nvar count = 0\nfor arrow in sortedArrows {\n    if arrow &lt;= t {\n        count += 1\n    } else {\n        break\n    }\n}\n\n\/\/ Output the result\nprint(count)\n<\/code><\/pre>\n<h2>Conclusion<\/h2>\n<p>Thus, we have solved the DDR arrow counting problem using Swift. Algorithm problems can initially seem difficult, but it is important to organize the problem well and approach it step by step. Keep practicing various problems and enhance your Swift programming skills! Thank you!<\/p>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hello, everyone! Today we will tackle an algorithm problem implemented in Swift. The topic is an algorithmic problem that arises in the &#8216;DDR (Dance Dance Revolution)&#8217; game. This problem will be very useful for improving your understanding of Swift programming and algorithms. Let&#8217;s explain the problem first and then solve it together. Problem Description The &hellip; <a href=\"https:\/\/atmokpo.com\/w\/34656\/\" class=\"more-link\">\ub354 \ubcf4\uae30<span class=\"screen-reader-text\"> &#8220;Swift Coding Test Course, Let&#8217;s try DDR&#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":[129],"tags":[],"class_list":["post-34656","post","type-post","status-publish","format-standard","hentry","category-swift-coding-test"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Swift Coding Test Course, Let&#039;s try DDR - \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\/34656\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Swift Coding Test Course, Let&#039;s try DDR - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"og:description\" content=\"Hello, everyone! Today we will tackle an algorithm problem implemented in Swift. The topic is an algorithmic problem that arises in the &#8216;DDR (Dance Dance Revolution)&#8217; game. This problem will be very useful for improving your understanding of Swift programming and algorithms. Let&#8217;s explain the problem first and then solve it together. Problem Description The &hellip; \ub354 \ubcf4\uae30 &quot;Swift Coding Test Course, Let&#8217;s try DDR&quot;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/atmokpo.com\/w\/34656\/\" \/>\n<meta property=\"og:site_name\" content=\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"article:published_time\" content=\"2024-11-01T09:30:32+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-11-01T11:27:07+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\/34656\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/34656\/\"},\"author\":{\"name\":\"root\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7\"},\"headline\":\"Swift Coding Test Course, Let&#8217;s try DDR\",\"datePublished\":\"2024-11-01T09:30:32+00:00\",\"dateModified\":\"2024-11-01T11:27:07+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/atmokpo.com\/w\/34656\/\"},\"wordCount\":448,\"publisher\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\"},\"articleSection\":[\"Swift Coding Test\"],\"inLanguage\":\"ko-KR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/atmokpo.com\/w\/34656\/\",\"url\":\"https:\/\/atmokpo.com\/w\/34656\/\",\"name\":\"Swift Coding Test Course, Let's try DDR - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#website\"},\"datePublished\":\"2024-11-01T09:30:32+00:00\",\"dateModified\":\"2024-11-01T11:27:07+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/atmokpo.com\/w\/34656\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/atmokpo.com\/w\/34656\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/atmokpo.com\/w\/34656\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\ud648\",\"item\":\"https:\/\/atmokpo.com\/w\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Swift Coding Test Course, Let&#8217;s try DDR\"}]},{\"@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":"Swift Coding Test Course, Let's try DDR - \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\/34656\/","og_locale":"ko_KR","og_type":"article","og_title":"Swift Coding Test Course, Let's try DDR - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","og_description":"Hello, everyone! Today we will tackle an algorithm problem implemented in Swift. The topic is an algorithmic problem that arises in the &#8216;DDR (Dance Dance Revolution)&#8217; game. This problem will be very useful for improving your understanding of Swift programming and algorithms. Let&#8217;s explain the problem first and then solve it together. Problem Description The &hellip; \ub354 \ubcf4\uae30 \"Swift Coding Test Course, Let&#8217;s try DDR\"","og_url":"https:\/\/atmokpo.com\/w\/34656\/","og_site_name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","article_published_time":"2024-11-01T09:30:32+00:00","article_modified_time":"2024-11-01T11:27:07+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\/34656\/#article","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/34656\/"},"author":{"name":"root","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7"},"headline":"Swift Coding Test Course, Let&#8217;s try DDR","datePublished":"2024-11-01T09:30:32+00:00","dateModified":"2024-11-01T11:27:07+00:00","mainEntityOfPage":{"@id":"https:\/\/atmokpo.com\/w\/34656\/"},"wordCount":448,"publisher":{"@id":"https:\/\/atmokpo.com\/w\/#organization"},"articleSection":["Swift Coding Test"],"inLanguage":"ko-KR"},{"@type":"WebPage","@id":"https:\/\/atmokpo.com\/w\/34656\/","url":"https:\/\/atmokpo.com\/w\/34656\/","name":"Swift Coding Test Course, Let's try DDR - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/#website"},"datePublished":"2024-11-01T09:30:32+00:00","dateModified":"2024-11-01T11:27:07+00:00","breadcrumb":{"@id":"https:\/\/atmokpo.com\/w\/34656\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/atmokpo.com\/w\/34656\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/atmokpo.com\/w\/34656\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\ud648","item":"https:\/\/atmokpo.com\/w\/en\/"},{"@type":"ListItem","position":2,"name":"Swift Coding Test Course, Let&#8217;s try DDR"}]},{"@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\/34656","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=34656"}],"version-history":[{"count":1,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/34656\/revisions"}],"predecessor-version":[{"id":34657,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/34656\/revisions\/34657"}],"wp:attachment":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/media?parent=34656"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/categories?post=34656"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/tags?post=34656"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}