LoginSignup
1
1

More than 1 year has passed since last update.

ABC251 A Dif:9 『AtCoder ABC251~275 ARC140~151 灰・茶・緑問題 超詳細解説』サンプル

Last updated at Posted at 2023-01-04

この記事は 『AtCoder ABC251~275 ARC140~151 灰・茶・緑問題 超詳細解説』 のサンプルです。

値段:300円(Kindle Unlimited対象)
【kindle】
https://www.amazon.co.jp/dp/B0BRNTM9Z4

【booth(pdf)】
https://sano192.booth.pm/items/4455120

ARC140~151の部分のみ抜粋した廉価版 もあります。
値段:200円(Kindle Unlimited対象)
【kindle】
https://www.amazon.co.jp/dp/B0BRNRXPCV

【booth(pdf)】
https://sano192.booth.pm/items/4455133

【サンプル一覧】
ABC251 A:https://qiita.com/sano192/items/810a4a7d5cf61321bb05
ABC262 B:https://qiita.com/sano192/items/8a9cc91d73a798de6a54
ABC256 C:https://qiita.com/sano192/items/c52d24d0cdf3797a77d7
ABC259 D:https://qiita.com/sano192/items/e39d3636c1ea5d62c1bb

「ものすごく丁寧でわかりやすいABC解説」シリーズをベースに【キーワード】【どう考える?】【別解】を追加し、【解説】と【実装のコツ】を分けることでよりわかりやすく、具体例や図もより豊富に全ての問題の解説を書き直しました!
さらにQiitaでは公開していないARC140~151の灰・茶・緑問題も解説しています!
緑を目指す灰・茶コーダーの方へおすすめ!

【キーワード】
なし

【どう考える?】
Sの文字数によっていくつSをくっつけるかを確認して条件分岐する。文字列の扱い方、ifの使い方がわかっていれば簡単。

【解説】
Sの文字数を数えて条件分岐する。
・1文字→Sを6個くっつける
・2文字→Sを3個くっつける
・3文字→Sを2個くっつける

文字数の確認方法などは【実装のコツ】を参照。

【実装のコツ】
<文字数の確認>
文字数はlen(文字列)とすることで確認できる。
lenはlength(長さ)の意味。

<文字の連結>
文字列についても足し算や掛け算の記号が使える。
すなわちSを3個くっつけるなら
S+S+S

S*3
と書けばいい。

<ifの書き方>
if 条件:
  処理内容
elif 条件:
  処理内容
else:
  処理内容

if,elifは「条件を満たせば」→「処理内容を行う」という意味。コードの上から順に処理を行っていく。
elseは「そうでなければ」すなわち「if,elifの条件が満たされなければ」→「処理内容を行う」という意味。

【提出】

# 入力の受け取り
S=input()

# 文字数が1の場合
if len(S)==1:
    # Sを6個くっつけて出力
    print(S*6)
# 文字数が2の場合
elif len(S)==2:
    # Sを3個くっつけて出力
    print(S*3)
# それ以外(文字数が3の場合)
else:
    # Sを2個くっつけて出力
    print(S*2)
1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1