クルトンのプログラミング教室

Pythonの使い方やPythonを使った競技プログラミングの解法などを解説しています。

Pythonで解くAtCoder(ABC173:B)

こんにちは、クルトンです!

この記事では
AtCoderのABC173(AtCoder Beginner Contest 173)のB問題をPythonを使って解説します。
 
問題のリンクを載せておきます。

atcoder.jp

 

 

この問題を解くのに必要な知識

  • 辞書
  • 文字列の結合

解法

まずキーがAC, WA, TLE, REの辞書を作ります。
 
  d = {'AC':0, 'WA':0, 'TLE':0, 'RE':0}
 
 これで一行ずつ入力を読み取るたびに
 
  d[(入力値)] += 1
 
 とすることで、AC, WA, TLE, REの個数を得られます。
 
 
あとはキーと値の出力ですが
 
  d.items() 
 
を使うことで、キーと値の一覧が得られます。
これをfor文と組み合わせることで、答えを出力できます。
 
出力は、+を使うことで、文字列を結合して出力します。
この時、str関数で値を文字列にするのを忘れないで下さい!
 
  print(key + ' x ' + str(value))
 
 以下にサンプルコードを載せておきます
サンプルコード

atcoder.jp

まとめ

今回は
  • 辞書を使う
  • itemsメソッドを使う
という問題でした。
 
この機会に、keysメソッドやvaluesメソッドもセットで調べてみることをおすすめします。
 
ではまたお会いしましょう!さようなら~