{"componentChunkName":"component---src-templates-post-template-jsx","path":"/algo/posts/2021-04-01--005","result":{"data":{"site":{"siteMetadata":{"title":"Blog by Eunyoung","subtitle":"작업 기록 블로그","copyright":"© All rights reserved.","author":{"name":"EunYoung","twitter":"#"},"disqusShortname":"","url":"https://ssongey.github.io"}},"markdownRemark":{"id":"6793858c-0b8b-51c1-8d48-0ff554fd34ce","html":"<p><span class=\"title__sub1\">#. 테스트 문제</span></p>\n<p>\n  <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/devHistoryBlog/static/59c542e8f0b5ee419617dac2f63145aa/e0577/005-01.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n  \n  <span\n    class=\"gatsby-resp-image-wrapper\"\n    style=\"position: relative; display: block;  max-width: 960px; margin-left: auto; margin-right: auto;\"\n  >\n    <span\n      class=\"gatsby-resp-image-background-image\"\n      style=\"padding-bottom: 80.83333333333333%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAQCAYAAAAWGF8bAAAACXBIWXMAABYlAAAWJQFJUiTwAAACr0lEQVQ4y31T2W7TUBD1h8MDD31ACAlRCYRUQR8QEkVUhVaIgIrUlaRNW0KTJs3S2LEdJ463eIv3w/imDQlUudLRzNi+5545d8xFkQzbOYA1PoLjHEPT9zGm3PeLAM6RZXc4W4L8/QlBBJemTdSrT1C5eIpmYxXF4xV8KzxEo/6cCD8hTT8yAFtL8JmwQbgEZ7kOHm8c4uXOKda/n+HR2z1URZlexogTC0li0sljWJYI0xRhGD3qpE9RYLWu8xiNujBMAa6rgwvjDOdtE5UbE1eCj3IngCmqAM8DGWarVqujVCqj0+mSJQ5s24Pr+ERsYTjU6EAHk0kIDvMrEZDgCtHvCxjra3BtE77XYMSGoZMSlRTptNnEwmlzi8uyDEmassKwWpAHJ1CVClTjjFoGOsouTF+a23I/Uc6TY6rQHsN+8Qx+pcZKc+sDoqGMSXKD/fYaykSK2EcUDsg/j9qvkSM8JElCr9dDq9Ui9SPEcUwK6VJ8zYAtiPBGOlLToM0RMk2DWtyBIm3DU4coCm9guDUmMAwDtjkMQxZT6jAHU+jt/YDfaMCtVuEeHsAtfGEq44GCtFpD1JMQ7BZQGn2FqBSIMMSyxdFcTDNNATxr5tOdU1kSg3pl+Un3PcaT/q1n6cy3eXBBnOLoSkW5a+O8O8be5RCaHd7rf6m/CTNQFi7hP4WWM8HKu1Osbl7g1XYFD17/xK+WwlrzJx6CwEdAcUKgWUcYBOzZHdm/pJzv04DSXzBxFdg0+Tb9AUOlg37/BrLcoaHlWeT5BvpKHutQFJ6cSu4njOhGh0MJcl8g0CjIPAaDHm0S5uI0/1uLdKvJQuszDyMyPFcjSS2aqSbhmhS1IYpNhumzPG/dfnNNeXuJwltCXZegaSLLBwOe1araY3necv58Wnepo94C4Tz+AG7AtGHgcmnhAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n    >\n      <img\n        class=\"gatsby-resp-image-image\"\n        style=\"width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;\"\n        alt=\"005 01\"\n        title=\"\"\n        src=\"/devHistoryBlog/static/59c542e8f0b5ee419617dac2f63145aa/d9199/005-01.png\"\n        srcset=\"/devHistoryBlog/static/59c542e8f0b5ee419617dac2f63145aa/8ff5a/005-01.png 240w,\n/devHistoryBlog/static/59c542e8f0b5ee419617dac2f63145aa/e85cb/005-01.png 480w,\n/devHistoryBlog/static/59c542e8f0b5ee419617dac2f63145aa/d9199/005-01.png 960w,\n/devHistoryBlog/static/59c542e8f0b5ee419617dac2f63145aa/07a9c/005-01.png 1440w,\n/devHistoryBlog/static/59c542e8f0b5ee419617dac2f63145aa/e0577/005-01.png 1796w\"\n        sizes=\"(max-width: 960px) 100vw, 960px\"\n      />\n    </span>\n  </span>\n  \n  </a>\n    </p>\n<hr>\n<p><span class=\"title__sub1\">#. 결과 및 풀이</span></p>\n<p><span class=\"title__sub2\">1. 풀이</span></p>\n<div class=\"gatsby-highlight\" data-language=\"java\"><pre class=\"language-java\"><code class=\"language-java\"><span class=\"token annotation punctuation\">@Test</span>\n<span class=\"token keyword\">void</span> <span class=\"token class-name\">CoinChange</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n    <span class=\"token class-name\">Assertions</span><span class=\"token punctuation\">.</span><span class=\"token function\">assertEquals</span><span class=\"token punctuation\">(</span><span class=\"token number\">3</span><span class=\"token punctuation\">,</span> <span class=\"token class-name\">CoinChange_Solution</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">new</span> <span class=\"token keyword\">int</span><span class=\"token punctuation\">[</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">{</span><span class=\"token number\">1</span><span class=\"token punctuation\">,</span><span class=\"token number\">2</span><span class=\"token punctuation\">,</span><span class=\"token number\">5</span><span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span> <span class=\"token number\">11</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span>\n\n<span class=\"token keyword\">private</span> <span class=\"token keyword\">int</span> <span class=\"token class-name\">CoinChange_Solution</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">int</span><span class=\"token punctuation\">[</span><span class=\"token punctuation\">]</span> coins<span class=\"token punctuation\">,</span> <span class=\"token keyword\">int</span> amount<span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n    \n    <span class=\"token comment\">//1.</span>\n    <span class=\"token keyword\">int</span> max <span class=\"token operator\">=</span> amount <span class=\"token operator\">+</span> <span class=\"token number\">1</span><span class=\"token punctuation\">;</span>\n    <span class=\"token keyword\">int</span><span class=\"token punctuation\">[</span><span class=\"token punctuation\">]</span> dp <span class=\"token operator\">=</span> <span class=\"token keyword\">new</span> <span class=\"token keyword\">int</span><span class=\"token punctuation\">[</span>max<span class=\"token punctuation\">]</span><span class=\"token punctuation\">;</span>\n    <span class=\"token class-name\">Arrays</span><span class=\"token punctuation\">.</span><span class=\"token function\">fill</span><span class=\"token punctuation\">(</span>dp<span class=\"token punctuation\">,</span> max<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n    dp<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\">0</span><span class=\"token punctuation\">;</span>\n    \n    <span class=\"token comment\">//2.</span>\n    <span class=\"token keyword\">for</span> <span class=\"token punctuation\">(</span><span class=\"token keyword\">int</span> i<span class=\"token operator\">=</span><span class=\"token number\">0</span><span class=\"token punctuation\">;</span> i<span class=\"token operator\">&lt;=</span>amount<span class=\"token punctuation\">;</span> i<span class=\"token operator\">++</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n        <span class=\"token keyword\">for</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">int</span> j<span class=\"token operator\">=</span><span class=\"token number\">0</span><span class=\"token punctuation\">;</span> j<span class=\"token operator\">&lt;</span>coins<span class=\"token punctuation\">.</span>length<span class=\"token punctuation\">;</span> j<span class=\"token operator\">++</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n            <span class=\"token keyword\">if</span><span class=\"token punctuation\">(</span>i <span class=\"token operator\">>=</span> coins<span class=\"token punctuation\">[</span>j<span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n                dp<span class=\"token punctuation\">[</span>i<span class=\"token punctuation\">]</span> <span class=\"token operator\">=</span> <span class=\"token class-name\">Math</span><span class=\"token punctuation\">.</span><span class=\"token function\">min</span><span class=\"token punctuation\">(</span>dp<span class=\"token punctuation\">[</span>i<span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> dp<span class=\"token punctuation\">[</span>i <span class=\"token operator\">-</span> coins<span class=\"token punctuation\">[</span>j<span class=\"token punctuation\">]</span><span class=\"token punctuation\">]</span> <span class=\"token operator\">+</span> <span class=\"token number\">1</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n            <span class=\"token punctuation\">}</span>\n        <span class=\"token punctuation\">}</span>\n    <span class=\"token punctuation\">}</span>\n    <span class=\"token keyword\">return</span> dp<span class=\"token punctuation\">[</span>amount<span class=\"token punctuation\">]</span> <span class=\"token operator\">></span> amount <span class=\"token operator\">?</span> <span class=\"token operator\">-</span><span class=\"token number\">1</span> <span class=\"token operator\">:</span> dp<span class=\"token punctuation\">[</span>amount<span class=\"token punctuation\">]</span><span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span></code></pre></div>\n<hr>\n<p><span class=\"title__sub2\">배웠다</span></p>","fields":{"tagSlugs":["/tags/dp/"],"slug":"/algo/posts/2021-04-01--005"},"frontmatter":{"title":"[참고] Coin Change","tags":["DP"],"date":"2021-04-01","description":"값이 나올 수 있는 동전 최소 개수"}}},"pageContext":{"slug":"/algo/posts/2021-04-01--005"}},"staticQueryHashes":[]}