2019-06-11に投稿

AtCoder Beginner Contest 087CをPythonで解く

AtCoder Beginner Contest 087CをPythonで解く

今回は、AtCoder Beginner Contest 087Cを解いていきたいと思います。

 問題

2×Nのマス目があります。上からi行目、左からj列目 (1≤i≤2, 1≤j≤N) のマスをマス(i,j)と表すことにします。あなたははじめ、左上のマス(1,1)にいます。
あなたは、右方向または下方向への移動を繰り返し、右下のマス(2,N)に移動しようとしています。マス(i,j)にはAi,j個のアメが置かれています。
あなたは移動中に通ったマスに置いてあるアメをすべて回収します。 左上および右下のマスにもアメが置かれており、あなたはこれらのマスに置かれているアメも回収します。
移動方法をうまく選んだとき、最大で何個のアメを回収できるでしょうか。

こう考えた。

  • 入力をN,L1,L2"でそれぞれ受ける。
  • forで全組み合わせを列挙し回答の配列に格納する。
  • printで表示する。

書いたコード

N=int(input())
L1=list(map(int,input().split()))
L2=list(map(int,input().split()))
C=[]
for n in range(N):
  C.append(sum(L1[:n+1])+sum(L2[n:]))
print(max(C))

🐍これでいけんちゃうかな?

結果

AC!!

🐍おし!

勉強になったコード

n=int(input())
a=list(map(int,input().split()))
b=list(map(int,input().split()))
print(max(sum(a[:i+1])+sum(b[i:]) for i in range(n)))

🐍リスト内にforかけるんや。

Originally published at www.coderecipe.org

view_list Pythonで競プロ
第5回 AtCoder Beginner Contest 095CをPythonで解く
第6回 AtCoder Beginner Contest 088BをPythonで解く
第7回 AtCoder Beginner Contest 087CをPythonで解く
第8回 AtCoder Beginner Contest 044AをPythonで解く
第9回 AtCoder Beginner Contest 090BをPythonで解く

aocory

Crieitは個人で開発中です。 興味がある方は是非記事の投稿をお願いします! どんな軽い内容でも嬉しいです。
なぜCrieitを作ろうと思ったか

また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!

こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください!

ボードとは?

関連記事

コメント