tag:crieit.net,2005:https://crieit.net/tags/Python%E3%81%A7%E7%AB%B6%E3%83%97%E3%83%AD%E9%81%8E%E5%8E%BB%E5%95%8F/feed 「Pythonで競プロ過去問」の記事 - Crieit Crieitでタグ「Pythonで競プロ過去問」に投稿された最近の記事 2019-05-28T10:05:42+09:00 https://crieit.net/tags/Python%E3%81%A7%E7%AB%B6%E3%83%97%E3%83%AD%E9%81%8E%E5%8E%BB%E5%95%8F/feed tag:crieit.net,2005:PublicArticle/15030 2019-05-27T10:20:48+09:00 2019-05-28T10:05:42+09:00 https://crieit.net/posts/Python-1-ABC128A Pythonで競プロ過去問1問目 ABC128A <h1 id="Python|AtCoder Beginner Contest 128Aを解く"><a href="#Python%7CAtCoder+Beginner+Contest+128A%E3%82%92%E8%A7%A3%E3%81%8F">Python|AtCoder Beginner Contest 128Aを解く</a></h1> <h2 id="問題"><a href="#%E5%95%8F%E9%A1%8C">問題</a></h2> <ol> <li><a target="_blank" rel="nofollow noopener" href="https://atcoder.jp/contests/abc128/tasks/abc128_a">Apple Pie</a></li> </ol> <h2 id="Apple Pie"><a href="#Apple+Pie">Apple Pie</a></h2> <blockquote> <p>問題文<br /> 林檎がA個、林檎の欠片が P個あります。<br /> 林檎1個は、砕くことで林檎の欠片3個になります。また、林檎の欠片2個を鍋で煮込むことで、アップルパイが1個作れます。<br /> 今ある材料で作れるアップルパイの最大数を求めてください。</p> </blockquote> <h2 id="素人の回答"><a href="#%E7%B4%A0%E4%BA%BA%E3%81%AE%E5%9B%9E%E7%AD%94">素人の回答</a></h2> <blockquote> <p>🐶 リンゴからアップルパイを作る問題やで</p> <p>🐶 ワイが書いた答えはこれや</p> </blockquote> <pre><code class="python">s = input().split() t=int(s[0])*3+int(s[1]) print(t//2) </code></pre> <h2 id="コード解説"><a href="#%E3%82%B3%E3%83%BC%E3%83%89%E8%A7%A3%E8%AA%AC">コード解説</a></h2> <h3 id="入力の処理"><a href="#%E5%85%A5%E5%8A%9B%E3%81%AE%E5%87%A6%E7%90%86">入力の処理</a></h3> <blockquote> <p>🐶 <code>input().split()</code>で入力んも値を2つに分けるねん。入力した値は配列に含まれるで。</p> </blockquote> <pre><code class="python">a=input().split() print(a) </code></pre> <h3 id="計算の実行"><a href="#%E8%A8%88%E7%AE%97%E3%81%AE%E5%AE%9F%E8%A1%8C">計算の実行</a></h3> <blockquote> <p>🐶<code>t=int(s[0])*3+int(s[1])</code>でinputはstr型やからstr型からint型に変更してるねん。</p> </blockquote> <p><a target="_blank" rel="nofollow noopener" href="コメント:型変換へのリンク"></a></p> <h3 id="計算の実行"><a href="#%E8%A8%88%E7%AE%97%E3%81%AE%E5%AE%9F%E8%A1%8C">計算の実行</a></h3> <blockquote> <p>🐶<code>print(t//2)</code>で割り算の整数商を出力してるねん。</p> </blockquote> <p><a target="_blank" rel="nofollow noopener" href="コメント:割り算へのリンク"></a></p> <h2 id="目からうろこの回答"><a href="#%E7%9B%AE%E3%81%8B%E3%82%89%E3%81%86%E3%82%8D%E3%81%93%E3%81%AE%E5%9B%9E%E7%AD%94">目からうろこの回答</a></h2> <blockquote> <p>🐶 次はこれ良いなと思った回答を紹介するで</p> </blockquote> <pre><code class="python">a,p=map(int,input().split()) print((a*3+p)//2) </code></pre> <h2 id="コード解説"><a href="#%E3%82%B3%E3%83%BC%E3%83%89%E8%A7%A3%E8%AA%AC">コード解説</a></h2> <h3 id="入力処理"><a href="#%E5%85%A5%E5%8A%9B%E5%87%A6%E7%90%86">入力処理</a></h3> <blockquote> <p>🐶<code>a,p=map(int,input().split())</code>は勉強なるで</p> </blockquote> <ul> <li><code>input().split()</code>で入力んも値を2つに分けるねん。</li> <li>それを2つの引数で引き受けるねん。</li> <li><code>map</code>使ってint型に変換までしてるねん。</li> </ul> <pre><code class="python">a,b=input().split() print(a) print(b) </code></pre> <blockquote> <p>🐶 入力された文字列をint型にまとめてやる処理が<code>map()</code>で<code>int()</code>を引数で渡して実行するねん。</p> <p>🐶 map()の簡単な例を示すで</p> </blockquote> <pre><code class="python">lst = [1, 2, 3, 4, 5, 6, 7] def double(x): return x * 2 new_lst = list(map(double, lst)) print(new_lst) </code></pre> <p><a target="_blank" rel="nofollow noopener" href="コメント:map()関数へのリンク"></a></p> <h2 id="まとめ"><a href="#%E3%81%BE%E3%81%A8%E3%82%81">まとめ</a></h2> <blockquote> <p>🐶学んだ事はこんな感じや。</p> </blockquote> <ul> <li><code>input</code>は引数を複数受けることができる</li> <li><code>map</code>便利</li> <li><code>//</code>で整数商を得ることができる。</li> </ul> aocory