長期投資シミュレーションツール『Tousimu』をリリースしました!

【解答付き】paizaスキルチェック見本問題「単語のカウント(Cランク)」を解説!

プログラミング
スポンサーリンク

この記事では

プログラミング学習サービスpaizaラーニング

スキルチェックレベルアップ問題集をわかりやすく解説します!

プログラミング言語はpythonです。

今回はCランク相当の以下の問題を解説します。

他のレベルアップ問題集の解答と解説も紹介しているので

ぜひご参考ください!

またpaizaの各ランクの攻略法は

こちらで詳しく紹介しているので、ぜひご参考ください!

スポンサーリンク

単語のカウント (paizaランク C 相当)の解答と解説

今回の問題は「単語のカウント (paizaランク C 相当)」です。

問題はこちらからご確認ください。

単語のカウント(paizaランク C 相当)

この問題を解くのに必要な知識は3つです。

必要な知識
  • 半角スペース区切りの入力をリストで受け取る
  • 単語の出現回数をカウント
  • 出現する順に結果を出力

それぞれ詳しく解説します。

半角スペース区切りの入力をリストで受け取る

まずは「半角スペース区切りの入力をリストで受け取る」です。

今回の問題では複数の英単語が

半角スペース区切りで1行で入力され、

それぞれの英単語の出現回数をカウントします。

そのためリストを使って各入力を受け取ります。

# 半角スペース区切りの入力をリストで受け取る
words = input().split()

リストと標準入力ついては、こちらをご参考ください!

単語の出現回数をカウント

次は「単語の出現回数をカウント」です。

まずは単語をカウントするための辞書を作成します。

# カウントするための辞書
word_dic = {}

辞書についてはこちらをご参考ください!

次に入力を受け取ったリストに対してfor文を使い

各英単語に対して処理を行います。

# 入力を受け取ったリストに対してfor文を使う
for word in words:
    # 各英単語に対する処理を書く

for文についてこちらをご参考ください!

次に各英単語に対して

「各英単語が辞書に存在するか」でif文を使って条件分岐を行います。

# 入力を受け取ったリストに対してfor文を使う
for word in words:
    if word in word_dic:
        # 存在する場合
    else:
        # 存在しない場合

if文についてはこちらをご参考ください!

そして存在する場合は

その英単語がキーの要素の値を1増やし

存在しない場合は

その英単語をキーとして値が1の要素を辞書に追加します。

# 入力を受け取ったリストに対してfor文を使う
for word in words:
    # 存在する場合
    if word in word_dic:
        # 値を1増やす
        word_dic[word] += 1
    # 存在しない場合
    else:
        # 新たに要素を追加
        word_dic[word] = 1

出現する順に結果を出力

最後は「出現する順に結果を出力」です。

辞書には各単語が出現順に格納されているので

辞書の各要素のキーと値for文を使って出力します。

# 各要素のキーと値を出現順に出力
for key, value in word_dic.items():
    print(key, value)

辞書とfor文については、こちらをご参考ください!

単語のカウント (paizaランク C 相当)の解答

まとめると「単語のカウント (paizaランク C 相当)」の解答は以下です。

# 半角スペース区切りの入力をリストで受け取る
words = input().split()

# カウントするための辞書
word_dic = {}

# 入力を受け取ったリストに対してfor文を使う
for word in words:
    # 存在する場合
    if word in word_dic:
        # 値を1増やす
        word_dic[word] += 1
    # 存在しない場合
    else:
        # 新たに要素を追加する
        word_dic[word] = 1

# 各要素のキーと値を出現順に出力する
for key, value in word_dic.items():
    print(key, value)

今回の問題は

といった高ランクでも頻繁に使用する基本文法を

全て使用しました。

特に辞書を使ったカウントの方法は

他の問題でも使用するのでぜひ覚えておきましょう!

スポンサーリンク

まとめ

今回はpaizaのスキルチェックのレベルアップ問題集の中で

  • 単語のカウント (paizaランク C 相当)

の解答と解説を紹介しました。

Cランクの問題からは必ずif文またはfor文が登場し

Dランクの問題に比べて、コードが複雑になります。

そのためコードを書き始める前に

頭の中で処理の流れをイメージをしてから書いていくのがおすすめです!

また他のレベルアップ問題集の問題についての解説も、ぜひご参考ください!

タイトルとURLをコピーしました