{"componentChunkName":"component---src-templates-blog-post-js","path":"/Algorithm/프로그래머스-N으로표현-Python/","result":{"data":{"site":{"siteMetadata":{"title":"hyesungoh","author":"hyesungoh","siteUrl":"https://www.hyesungoh.xyz","comment":{"disqusShortName":"","utterances":"hyesungoh/blog"},"sponsor":{"buyMeACoffeeId":""}}},"markdownRemark":{"id":"765e3aa9-756b-5a8d-9a2e-9d81fe7411bf","excerpt":"숫자 N과 number가 주어질 때, N과 사칙연산만 사용해서 표현 할 수 있는 방법 중 N 사용횟수의 최솟값을 반환하는 문제. 최솟값이 8보다 클 시 -1을 반환하기 때문에 1부터 7까지의 경우의 수만을 확인하였다. set 자료형을 이용하여 1부터 8까지 n이 이어붙어져 있는 수들로 이루어진 배열을 만들었다. 그 후 i에 대해서 1부터 7까지, j에 대해서 0부터 i까지 반복을 수행한다. i가 4일 시, 1로 만들 수 있는 수 + 3으로 만들 수 있는 수, 2 + 2, 3 +…","html":"<p>숫자 N과 number가 주어질 때, N과 사칙연산만 사용해서 표현 할 수 있는 방법 중 N 사용횟수의 최솟값을 반환하는 문제. 최솟값이 8보다 클 시 -1을 반환하기 때문에 1부터 7까지의 경우의 수만을 확인하였다. set 자료형을 이용하여 1부터 8까지 n이 이어붙어져 있는 수들로 이루어진 배열을 만들었다. 그 후 i에 대해서 1부터 7까지, j에 대해서 0부터 i까지 반복을 수행한다. i가 4일 시, 1로 만들 수 있는 수 + 3으로 만들 수 있는 수, 2 + 2, 3 + 1의 규칙을 이용하여 각 sets에 들어있는 요소들을 사칙연산한 후, 해당 sets에 들어있을 시 i를 반환, 반복 종료 시 -1을 반환하여 풀었다. <a href=\"https://gurumee92.tistory.com/164\">해당 게시물</a>을 참고하였다.</p>\n<div class=\"gatsby-highlight\" data-language=\"python\"><pre class=\"language-python\"><code class=\"language-python\"><span class=\"token keyword\">def</span> <span class=\"token function\">solution</span><span class=\"token punctuation\">(</span>N<span class=\"token punctuation\">,</span> number<span class=\"token punctuation\">)</span><span class=\"token punctuation\">:</span>\n    <span class=\"token keyword\">if</span> N <span class=\"token operator\">==</span> number<span class=\"token punctuation\">:</span>\n        <span class=\"token keyword\">return</span> <span class=\"token number\">1</span>\n\n    sets <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token punctuation\">]</span>\n    <span class=\"token keyword\">for</span> i <span class=\"token keyword\">in</span> <span class=\"token builtin\">range</span><span class=\"token punctuation\">(</span><span class=\"token number\">1</span><span class=\"token punctuation\">,</span> <span class=\"token number\">8</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">:</span>\n        t <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token builtin\">int</span><span class=\"token punctuation\">(</span><span class=\"token builtin\">str</span><span class=\"token punctuation\">(</span>N<span class=\"token punctuation\">)</span> <span class=\"token operator\">*</span> i<span class=\"token punctuation\">)</span><span class=\"token punctuation\">]</span>\n        sets<span class=\"token punctuation\">.</span>append<span class=\"token punctuation\">(</span><span class=\"token builtin\">set</span><span class=\"token punctuation\">(</span>t<span class=\"token punctuation\">)</span><span class=\"token punctuation\">)</span>\n\n    <span class=\"token keyword\">for</span> i <span class=\"token keyword\">in</span> <span class=\"token builtin\">range</span><span class=\"token punctuation\">(</span><span class=\"token number\">1</span><span class=\"token punctuation\">,</span> <span class=\"token number\">8</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">:</span>\n        <span class=\"token keyword\">for</span> j <span class=\"token keyword\">in</span> <span class=\"token builtin\">range</span><span class=\"token punctuation\">(</span>i<span class=\"token punctuation\">)</span><span class=\"token punctuation\">:</span>\n            <span class=\"token keyword\">for</span> i_set <span class=\"token keyword\">in</span> sets<span class=\"token punctuation\">[</span>j<span class=\"token punctuation\">]</span><span class=\"token punctuation\">:</span>\n                <span class=\"token keyword\">for</span> j_set <span class=\"token keyword\">in</span> sets<span class=\"token punctuation\">[</span>i<span class=\"token operator\">-</span>j<span class=\"token operator\">-</span><span class=\"token number\">1</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">:</span>\n                    sets<span class=\"token punctuation\">[</span>i<span class=\"token punctuation\">]</span><span class=\"token punctuation\">.</span>add<span class=\"token punctuation\">(</span>i_set <span class=\"token operator\">+</span> j_set<span class=\"token punctuation\">)</span>\n                    sets<span class=\"token punctuation\">[</span>i<span class=\"token punctuation\">]</span><span class=\"token punctuation\">.</span>add<span class=\"token punctuation\">(</span>i_set <span class=\"token operator\">-</span> j_set<span class=\"token punctuation\">)</span>\n                    sets<span class=\"token punctuation\">[</span>i<span class=\"token punctuation\">]</span><span class=\"token punctuation\">.</span>add<span class=\"token punctuation\">(</span>i_set <span class=\"token operator\">*</span> j_set<span class=\"token punctuation\">)</span>\n                    <span class=\"token keyword\">if</span> j_set <span class=\"token operator\">!=</span> <span class=\"token number\">0</span><span class=\"token punctuation\">:</span>\n                        sets<span class=\"token punctuation\">[</span>i<span class=\"token punctuation\">]</span><span class=\"token punctuation\">.</span>add<span class=\"token punctuation\">(</span>i_set <span class=\"token operator\">//</span> j_set<span class=\"token punctuation\">)</span>\n\n        <span class=\"token keyword\">if</span> number <span class=\"token keyword\">in</span> sets<span class=\"token punctuation\">[</span>i<span class=\"token punctuation\">]</span><span class=\"token punctuation\">:</span>\n            <span class=\"token keyword\">return</span> i <span class=\"token operator\">+</span> <span class=\"token number\">1</span>\n    <span class=\"token keyword\">else</span><span class=\"token punctuation\">:</span>\n        <span class=\"token keyword\">return</span> <span class=\"token operator\">-</span><span class=\"token number\">1</span></code></pre></div>","frontmatter":{"title":"프로그래머스-N으로표현 - Python","date":"March 06, 2021"}}},"pageContext":{"slug":"/Algorithm/프로그래머스-N으로표현-Python/","previous":{"fields":{"slug":"/Algorithm/프로그래머스-정수삼각형-Python/"},"frontmatter":{"title":"프로그래머스-정수삼각형 - Python","category":"Algorithm","draft":false}},"next":{"fields":{"slug":"/Algorithm/BOJ-2252-Python/"},"frontmatter":{"title":"BOJ-2252 - Python","category":"Algorithm","draft":false}}}},"staticQueryHashes":["3128451518","3290666882"]}