2019-05-28に更新

Pythonで競プロ過去問1問目 ABC128A

Python|AtCoder Beginner Contest 128Aを解く

問題

  1. Apple Pie

Apple Pie

問題文
林檎がA個、林檎の欠片が P個あります。
林檎1個は、砕くことで林檎の欠片3個になります。また、林檎の欠片2個を鍋で煮込むことで、アップルパイが1個作れます。
今ある材料で作れるアップルパイの最大数を求めてください。

素人の回答

🐶 リンゴからアップルパイを作る問題やで

🐶 ワイが書いた答えはこれや

s = input().split()
t=int(s[0])*3+int(s[1])
print(t//2)

コード解説

入力の処理

🐶 input().split()で入力んも値を2つに分けるねん。入力した値は配列に含まれるで。

a=input().split()
print(a)

計算の実行

🐶t=int(s[0])*3+int(s[1])でinputはstr型やからstr型からint型に変更してるねん。

計算の実行

🐶print(t//2)で割り算の整数商を出力してるねん。

目からうろこの回答

🐶 次はこれ良いなと思った回答を紹介するで

a,p=map(int,input().split())
print((a*3+p)//2)

コード解説

入力処理

🐶a,p=map(int,input().split())は勉強なるで

  • input().split()で入力んも値を2つに分けるねん。
  • それを2つの引数で引き受けるねん。
  • map使ってint型に変換までしてるねん。
a,b=input().split()
print(a)
print(b)

🐶 入力された文字列をint型にまとめてやる処理がmap()int()を引数で渡して実行するねん。

🐶 map()の簡単な例を示すで

lst = [1, 2, 3, 4, 5, 6, 7]
def double(x):
    return x * 2
new_lst = list(map(double, lst))
print(new_lst)

まとめ

🐶学んだ事はこんな感じや。

  • inputは引数を複数受けることができる
  • map便利
  • //で整数商を得ることができる。
Originally published at www.coderecipe.org
ツイッターでシェア
みんなに共有、忘れないようにメモ

aocory

Crieitは誰でも投稿できるサービスです。 是非記事の投稿をお願いします。どんな軽い内容でも投稿できます。

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

有料記事を販売できるようになりました!

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

コメント