{"componentChunkName":"component---src-templates-blog-post-js","path":"/Algorithm/BOJ-2749-Python/","result":{"data":{"site":{"siteMetadata":{"title":"hyesungoh","author":"hyesungoh","siteUrl":"https://www.hyesungoh.xyz","comment":{"disqusShortName":"","utterances":"hyesungoh/blog"},"sponsor":{"buyMeACoffeeId":""}}},"markdownRemark":{"id":"e98ae073-69aa-5bb7-a1c8-073890e450de","excerpt":"1,000,000,000,000,000,000보다 작거나 같은 n이 주어질 때, n 번째 피보나치 수를 출력하는 문제. 첫 번째 풀이는 단순 DP 방법을 이용하여 풀었으나 당연하게도 메모리 초과 결과를 받게 되었다. 피보나치 수를 나눈 수는 주기를 갖는 특징, 피사노 주기를 계산하여 해당 값을 이용하여 피보나치 수를 계산, 해당 값을 출력하여 풀었다.","html":"<p>1,000,000,000,000,000,000보다 작거나 같은 n이 주어질 때, n 번째 피보나치 수를 출력하는 문제. 첫 번째 풀이는 단순 DP 방법을 이용하여 풀었으나 당연하게도 메모리 초과 결과를 받게 되었다. 피보나치 수를 나눈 수는 주기를 갖는 특징, 피사노 주기를 계산하여 해당 값을 이용하여 피보나치 수를 계산, 해당 값을 출력하여 풀었다.</p>\n<div class=\"gatsby-highlight\" data-language=\"python\"><pre class=\"language-python\"><code class=\"language-python\"><span class=\"token comment\"># n = int(input())</span>\n<span class=\"token comment\"># dp = [0 for _ in range(n+1)]</span>\n<span class=\"token comment\"># dp[1] = 1</span>\n<span class=\"token comment\">#</span>\n<span class=\"token comment\"># for i in range(2, n+1):</span>\n<span class=\"token comment\">#     dp[i] = (dp[i-1] + dp[i-2]) % 1000000</span>\n<span class=\"token comment\"># print(dp[i] % 1000000)</span>\n\n\nDIV <span class=\"token operator\">=</span> <span class=\"token number\">1000000</span>\n\n<span class=\"token keyword\">def</span> <span class=\"token function\">solve</span><span class=\"token punctuation\">(</span>n<span class=\"token punctuation\">)</span><span class=\"token punctuation\">:</span>\n    n1<span class=\"token punctuation\">,</span> n2 <span class=\"token operator\">=</span> <span class=\"token number\">0</span><span class=\"token punctuation\">,</span> <span class=\"token number\">1</span>\n    <span class=\"token keyword\">for</span> _ <span class=\"token keyword\">in</span> <span class=\"token builtin\">range</span><span class=\"token punctuation\">(</span>n<span class=\"token punctuation\">)</span><span class=\"token punctuation\">:</span>\n        n1<span class=\"token punctuation\">,</span> n2 <span class=\"token operator\">=</span> n2 <span class=\"token operator\">%</span> DIV<span class=\"token punctuation\">,</span> <span class=\"token punctuation\">(</span>n1 <span class=\"token operator\">+</span> n2<span class=\"token punctuation\">)</span> <span class=\"token operator\">%</span> DIV\n    <span class=\"token keyword\">return</span> n1\n\nn <span class=\"token operator\">=</span> <span class=\"token builtin\">int</span><span class=\"token punctuation\">(</span><span class=\"token builtin\">input</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">)</span>\n<span class=\"token keyword\">print</span><span class=\"token punctuation\">(</span>solve<span class=\"token punctuation\">(</span>n<span class=\"token operator\">%</span><span class=\"token punctuation\">(</span><span class=\"token number\">15</span><span class=\"token operator\">*</span><span class=\"token punctuation\">(</span><span class=\"token number\">10</span><span class=\"token operator\">**</span><span class=\"token number\">5</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">)</span></code></pre></div>","frontmatter":{"title":"BOJ-2749 - Python","date":"February 01, 2021"}}},"pageContext":{"slug":"/Algorithm/BOJ-2749-Python/","previous":{"fields":{"slug":"/Algorithm/BOJ-19622-Python/"},"frontmatter":{"title":"BOJ-19622 - Python","category":"Algorithm","draft":false}},"next":{"fields":{"slug":"/Algorithm/BOJ-4195-Python/"},"frontmatter":{"title":"BOJ-4195 - Python","category":"Algorithm","draft":false}}}},"staticQueryHashes":["3128451518","3290666882"]}