💭
AtCoder ABC 002 A-正直者 Pythonでの解き方を初心者向けに解説!【競プロ】
問題
いま、神の恵みで高橋くんにお金が与えられます。
神は高橋くんに 2 つの金額を提示します。
正直者の高橋くんは、常に大きな金額を選択します。
そこで、与えられた 2 つの整数のうち、大きい方の値を出力するプログラムを書いてください。
制約
お互いに異なることが保証されている。
入力形式
解説
↓こちらが正解例です。
ABC002-A.py
X,Y=map(int,input().split())
ans=max(X,Y)
print(ans)
問題概要にある通り、x,yのどちらか大きい方を出力すればOK
正直map部分はコピペでいいかも!
一応起こっていることを説明します。
- X,Y=map(int,input().split())
- X,Y=map(int,"4 7".split())
- X,Y=map(int,"4","7")
- X,Y=4,7
1.もとの式
2.まずinputでX,Yを文字列として受け取ります!なんらかの整数なので4,7としておきます。
3.split()は空白で区切る関数です。"4 7"という文字列を"4","7"に変更します!
4.ここ重要!! map()は、map(関数、関数を適用するもの)という式です。なので、文字列"4"と"7"を数字に変換して計算できるようにします!
これでXとYに4,7が入ります
たった一行のくせにめんどくせ~~~~~
max()はその中で一番大きい値を出力します!それをansに入れる!
ansを出力して終了!
ひとこと
map、理解しなくてもいいよ
この記事を書きながら、「あ、そうなってるんだ~」って感じでした。感覚って怖いね(´^ω^`)。
入力が一番難しい問題ってちょっとオモロイな。
これであなたは比較ができるようになった!これでスコア計算とかできるようになった!おめでとう!!!
おすすめの本
初めての人はここから!
アルゴリズム的思考力が身につく! プログラミングコンテストAtCoder入門
Discussion