{"data":{"site":{"siteMetadata":{"title":"HOME | blackpudding","subtitle":"고생했어. 오늘도.","copyright":"© All rights reserved.","author":{"name":"William JO","github":"blackpudding96"},"disqusShortname":"blackpudding","url":"https://blackpudding.netlify.com"}},"markdownRemark":{"id":"e9a2f55a-affa-5239-a2a5-d276b14f0c01","html":"<h1>3035번 : 스캐너</h1>\n<p>👉 <a href=\"https://www.acmicpc.net/problem/3035\">문제 바로가기</a></p>\n<h2>배경 지식</h2>\n<ul>\n<li><code class=\"language-text\">약간의 수학적 사고력</code></li>\n</ul>\n<h2>푼 방법</h2>\n<p>입력 받은 신문 기사를 (r * zr)(c * zc) 행렬로 확대 출력하는데, <strong>각 행과 열의 인덱스를 zr과 zc로 나누어 올림한 인덱스를 입력 받은 신문 기사 배열의 인덱스로 하여 출력 해주면 된다.</strong></p>\n<p>양수의 나눗셈 올림 방법은 여러가지가 있지만 나는 다음의 식을 사용했다.</p>\n<h4>(x + y - 1) / y</h4>\n<p><strong>[x = 피제수(dividend), y = 제수(divisor)]</strong></p>\n<h2>내 정답 코드 (C++)</h2>\n<div class=\"gatsby-highlight\" data-language=\"c\"><pre class=\"language-c\"><code class=\"language-c\"><span class=\"token macro property\">#<span class=\"token directive keyword\">include</span> <span class=\"token string\">&lt;iostream></span></span>\n\n<span class=\"token keyword\">int</span> <span class=\"token function\">main</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n\tstd<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span>ios<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">sync_with_stdio</span><span class=\"token punctuation\">(</span>false<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n\tstd<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span>cin<span class=\"token punctuation\">.</span><span class=\"token function\">tie</span><span class=\"token punctuation\">(</span><span class=\"token constant\">NULL</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span> \n\tstd<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span>cout<span class=\"token punctuation\">.</span><span class=\"token function\">tie</span><span class=\"token punctuation\">(</span><span class=\"token constant\">NULL</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n\t\n\t<span class=\"token keyword\">int</span> r<span class=\"token punctuation\">,</span> c<span class=\"token punctuation\">,</span> zr<span class=\"token punctuation\">,</span> zc<span class=\"token punctuation\">;</span>\n\t\n\t<span class=\"token keyword\">char</span> article<span class=\"token punctuation\">[</span><span class=\"token number\">51</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">[</span><span class=\"token number\">51</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">;</span>\n\t<span class=\"token keyword\">char</span> result<span class=\"token punctuation\">[</span><span class=\"token number\">251</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">[</span><span class=\"token number\">251</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">;</span>\n\t\n\tstd<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span>cin <span class=\"token operator\">>></span> r <span class=\"token operator\">>></span> c <span class=\"token operator\">>></span> zr <span class=\"token operator\">>></span> zc<span class=\"token punctuation\">;</span>\n\t\n\t<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\">1</span><span class=\"token punctuation\">;</span> i <span class=\"token operator\">&lt;=</span> r<span class=\"token punctuation\">;</span> <span class=\"token operator\">++</span>i<span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n\t\t<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\">1</span><span class=\"token punctuation\">;</span> j <span class=\"token operator\">&lt;=</span> c<span class=\"token punctuation\">;</span> <span class=\"token operator\">++</span>j<span class=\"token punctuation\">)</span>\n\t\t\tstd<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span>cin <span class=\"token operator\">>></span> article<span class=\"token punctuation\">[</span>i<span class=\"token punctuation\">]</span><span class=\"token punctuation\">[</span>j<span class=\"token punctuation\">]</span><span class=\"token punctuation\">;</span>\n\t<span class=\"token punctuation\">}</span>\n\t\n\t<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\">1</span><span class=\"token punctuation\">;</span> i <span class=\"token operator\">&lt;=</span> r<span class=\"token operator\">*</span>zr<span class=\"token punctuation\">;</span> <span class=\"token operator\">++</span>i<span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n\t\t<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\">1</span><span class=\"token punctuation\">;</span> j <span class=\"token operator\">&lt;=</span> c<span class=\"token operator\">*</span>zc<span class=\"token punctuation\">;</span> <span class=\"token operator\">++</span>j<span class=\"token punctuation\">)</span>\n\t\t\tstd<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span>cout <span class=\"token operator\">&lt;&lt;</span> article<span class=\"token punctuation\">[</span><span class=\"token punctuation\">(</span>i<span class=\"token operator\">+</span>zr<span class=\"token operator\">-</span><span class=\"token number\">1</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">/</span> zr<span class=\"token punctuation\">]</span><span class=\"token punctuation\">[</span><span class=\"token punctuation\">(</span>j<span class=\"token operator\">+</span>zc<span class=\"token operator\">-</span><span class=\"token number\">1</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">/</span> zc<span class=\"token punctuation\">]</span><span class=\"token punctuation\">;</span>\n\t\tstd<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span>cout <span class=\"token operator\">&lt;&lt;</span> <span class=\"token string\">'\\n'</span><span class=\"token punctuation\">;</span>\n\t<span class=\"token punctuation\">}</span>\n    \n    <span class=\"token keyword\">return</span> <span class=\"token number\">0</span><span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span></code></pre></div>\n<h3>References</h3>\n<p><a href=\"https://hashcode.co.kr/questions/927/cc%EC%97%90%EC%84%9C-%EC%A0%95%EC%88%98-%EB%82%98%EB%88%97%EC%85%88-%EA%B2%B0%EA%B3%BC%EB%A5%BC-%EB%B9%A0%EB%A5%B4%EA%B2%8C-%EC%98%AC%EB%A6%BC%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95\">https://hashcode.co.kr/questions/927/cc%EC%97%90%EC%84%9C-%EC%A0%95%EC%88%98-%EB%82%98%EB%88%97%EC%85%88-%EA%B2%B0%EA%B3%BC%EB%A5%BC-%EB%B9%A0%EB%A5%B4%EA%B2%8C-%EC%98%AC%EB%A6%BC%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95</a></p>","fields":{"tagSlugs":["/tags/백준/","/tags/algorithm/"],"slug":"/posts/baekjoons/3035/"},"frontmatter":{"title":"[백준] 3035 : 스캐너","tags":["백준","Algorithm"],"date":"2020-04-30","description":"백준 3035번 문제 : 스캐너"}}},"pageContext":{"slug":"/posts/baekjoons/3035/"}}