この記事は 『AtCoder ABC226~250 ARC129~139 灰・茶・緑問題 超詳細解説』 のサンプルです。
値段:300円(Kindle Unlimited対象)
【kindle】
https://www.amazon.co.jp/dp/B0B7G13QMS
【booth(pdf)】
https://sano192.booth.pm/items/4025713
ARC129~139の部分のみ抜粋した廉価版 もあります。
値段:200円(Kindle Unlimited対象)
【kindle】
https://www.amazon.co.jp/dp/B0B7G337YF
【booth(pdf)】
https://sano192.booth.pm/items/4025737
【サンプル一覧】
ABC228 A:https://qiita.com/sano192/private/f8f09ea769f2414a5733
ABC249 B:https://qiita.com/sano192/private/daf74d7c31bc698d33ce
ABC226 C:https://qiita.com/sano192/private/3aa26373ca6cfcb3ef0f
ABC246 D:https://qiita.com/sano192/private/a22aadde99945bfb01a8
「ものすごく丁寧でわかりやすいABC解説」シリーズをベースに【キーワード】【どう考える?】【別解】を追加し、【解説】と【実装のコツ】を分けることでよりわかりやすく、具体例や図もより豊富に全ての問題の解説を書き直しました!
さらにQiitaでは公開していないARC129~139の灰・茶・緑問題も解説しています!
緑を目指す灰・茶コーダーの方へおすすめ!
【キーワード】
なし
【どう考える?】
S,Tにてきとうな数字をいれて考えるとS<Tの場合とT<Sの場合を分けるべきだということに気づくだろう。
それぞれの場合についてどのパターンが「Yes」となるか考え、ifで条件分岐するだけ。
【解説】
S<Tの場合とT<Sの場合でそれぞれ考える。
(1)S<T
S≤X<T→「Yes」
上記以外→「No」
~例~
S:4
T:20
4≤X<20ならば「Yes」
(2)T<S
S≤XまたはX<T→「Yes」
上記以外→「No」
~例~
S:20
T:4
20≤XまたはX<4ならば「Yes」
【実装のコツ】
入力の受け取り、出力がわからない人はまず巻末にある「入力と出力」を読んでほしい。
<ifの書き方>
if 条件:
処理内容
else:
処理内容
ifは「条件を満たせば」→「処理内容を行う」という意味。コードの上から順に処理を行っていく。
elseは「そうでなければ」すなわち「ifの条件が満たされなければ」→「処理内容を行う」という意味。
<条件 または>
条件が「または」で繋がる場合はorを使う。
S≤XまたはX<T
if X<T or S<=X:
<文字列の出力>
文字を出力する際は
print(”文字”)
というようにダブルクォーテーションをつける。
pythonにこれは変数ではなく、文字であると伝えるため。
・正 print(“Yes”)
・誤 print(Yes)
【提出】
# 入力の受け取り
S,T,X=map(int,input().split())
# S<Tならば
if S<T:
# S<=X<Tなら
if S<=X<T:
# 「Yes」を出力
print("Yes")
# そうでなければ
else:
# 「No」を出力
print("No")
# そうでなければ(T<Sならば)
else:
# X<TまたはS<=Xならば
if X<T or S<=X:
# 「Yes」を出力
print("Yes")
# そうでなければ
else:
# 「No」を出力
print("No")