{"componentChunkName":"component---src-templates-blog-post-js","path":"/Algorithm/프로그래머스-기능개발-Python/","result":{"data":{"site":{"siteMetadata":{"title":"hyesungoh","author":"hyesungoh","siteUrl":"https://www.hyesungoh.xyz","comment":{"disqusShortName":"","utterances":"hyesungoh/blog"},"sponsor":{"buyMeACoffeeId":""}}},"markdownRemark":{"id":"36dad602-17f5-5898-b704-225c8fc5e696","excerpt":"개발 진행도와 개발 속도, 두 배열을 입력받는다. 개발 진행도가 100 이상일 때 배포가 가능하며, 앞에 있는 것을 먼저 배포해야만 하며 뒤에 이미 개발 진행도가 100 이상인 것과 함께 배포가 된다. 각 배포마다 몇 개의 기닝이 배포되는 지를 반환하는 문제. 첫 번째 풀이는 for를 이용하여 각 기능들을, while을 이용해 days를 관리하여 풀었다. 두 번째 풀이는 입력받는 두 배열을 deque화한 후, while만을 이용하여 조건 충속시 popleft 되도록 풀었다.","html":"<p>개발 진행도와 개발 속도, 두 배열을 입력받는다. 개발 진행도가 100 이상일 때 배포가 가능하며, 앞에 있는 것을 먼저 배포해야만 하며 뒤에 이미 개발 진행도가 100 이상인 것과 함께 배포가 된다. 각 배포마다 몇 개의 기닝이 배포되는 지를 반환하는 문제. 첫 번째 풀이는 for를 이용하여 각 기능들을, while을 이용해 days를 관리하여 풀었다. 두 번째 풀이는 입력받는 두 배열을 deque화한 후, while만을 이용하여 조건 충속시 popleft 되도록 풀었다.</p>\n<div class=\"gatsby-highlight\" data-language=\"python\"><pre class=\"language-python\"><code class=\"language-python\"><span class=\"token comment\"># def solution(pgrs, spds):</span>\n<span class=\"token comment\">#     n = len(pgrs)</span>\n<span class=\"token comment\">#     days = 1</span>\n<span class=\"token comment\">#     last_days = [0]</span>\n<span class=\"token comment\">#     ans = []</span>\n<span class=\"token comment\">#</span>\n<span class=\"token comment\">#     for i in range(n):</span>\n<span class=\"token comment\">#         while True:</span>\n<span class=\"token comment\">#             if pgrs[i] + days * spds[i] >= 100:</span>\n<span class=\"token comment\">#                 if last_days[-1] == days:</span>\n<span class=\"token comment\">#                     ans[-1] += 1</span>\n<span class=\"token comment\">#                 else:</span>\n<span class=\"token comment\">#                     last_days.append(days)</span>\n<span class=\"token comment\">#                     ans.append(1)</span>\n<span class=\"token comment\">#                 break</span>\n<span class=\"token comment\">#</span>\n<span class=\"token comment\">#             days += 1</span>\n<span class=\"token comment\">#</span>\n<span class=\"token comment\">#     return ans</span>\n\n\n<span class=\"token keyword\">from</span> collections <span class=\"token keyword\">import</span> deque\n\n<span class=\"token keyword\">def</span> <span class=\"token function\">solution</span><span class=\"token punctuation\">(</span>pgrs<span class=\"token punctuation\">,</span> spds<span class=\"token punctuation\">)</span><span class=\"token punctuation\">:</span>\n    pgrs <span class=\"token operator\">=</span> deque<span class=\"token punctuation\">(</span>pgrs<span class=\"token punctuation\">)</span>\n    spds <span class=\"token operator\">=</span> deque<span class=\"token punctuation\">(</span>spds<span class=\"token punctuation\">)</span>\n    answer <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token punctuation\">]</span>\n    days<span class=\"token punctuation\">,</span> count <span class=\"token operator\">=</span> <span class=\"token number\">0</span><span class=\"token punctuation\">,</span> <span class=\"token number\">0</span>\n\n    <span class=\"token keyword\">while</span> pgrs<span class=\"token punctuation\">:</span>\n        <span class=\"token keyword\">if</span> pgrs<span class=\"token punctuation\">[</span><span class=\"token number\">0</span><span class=\"token punctuation\">]</span> <span class=\"token operator\">+</span> days <span class=\"token operator\">*</span> spds<span class=\"token punctuation\">[</span><span class=\"token number\">0</span><span class=\"token punctuation\">]</span> <span class=\"token operator\">>=</span> <span class=\"token number\">100</span><span class=\"token punctuation\">:</span>\n            pgrs<span class=\"token punctuation\">.</span>popleft<span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span>\n            spds<span class=\"token punctuation\">.</span>popleft<span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span>\n            count <span class=\"token operator\">+=</span> <span class=\"token number\">1</span>\n        <span class=\"token keyword\">else</span><span class=\"token punctuation\">:</span>\n            days <span class=\"token operator\">+=</span> <span class=\"token number\">1</span>\n            <span class=\"token keyword\">if</span> count <span class=\"token operator\">></span> <span class=\"token number\">0</span><span class=\"token punctuation\">:</span>\n                answer<span class=\"token punctuation\">.</span>append<span class=\"token punctuation\">(</span>count<span class=\"token punctuation\">)</span>\n                count <span class=\"token operator\">=</span> <span class=\"token number\">0</span>\n\n    answer<span class=\"token punctuation\">.</span>append<span class=\"token punctuation\">(</span>count<span class=\"token punctuation\">)</span>\n    <span class=\"token keyword\">return</span> answer</code></pre></div>","frontmatter":{"title":"프로그래머스-기능개발 - Python","date":"February 28, 2021"}}},"pageContext":{"slug":"/Algorithm/프로그래머스-기능개발-Python/","previous":{"fields":{"slug":"/Github/github_profile_make_up/"},"frontmatter":{"title":"Github 프로필 꾸미기","category":"Github","draft":false}},"next":{"fields":{"slug":"/Algorithm/BOJ-1043-Python/"},"frontmatter":{"title":"BOJ-1043 - Python","category":"Algorithm","draft":false}}}},"staticQueryHashes":["3128451518","3290666882"]}