Aizu Online Judge を Python 3 でやってます。 今回はITP1_9_A~ITP1_9_Dまでです。 今回も文字列操作関連のプログラミングです。 正確には前回は文字型関連のプログラムになるのかもしれませんが Pythonでは文字列型と区別された文字型はなく、文字というのは単なる長さが 1 の文字列なので。 ITP1_9_A - Finding a Word文章T の中にある単語 W の数を出力するプログラムです。 この問題では大文字小文字の区別はしないので、入力はlower()メソッドで小文字に変えています。 入力文章をsplit()で単語単位に分けてlistとして、count()メソッドで単語の出現回数を得ています。 ITP1_9_B - Shufflecards=cards[h:]+cards[:h] の部分でシャッフルをやっています。 Pythonのスライスでは、開始インデクスは常に含まれ、終了インデクスは常に含まれないので はじめ違和感があったのですが、このような場合は-1などをつける必要がなく自然に書けますね。 慣れてくるとこちらの方がやりやすくなってきました。 ITP1_9_C - Card GamePythonでは文字列の辞書順での大小関係を比較演算子を使って比較することができるので、それで比較を行い、太郎と花子それぞれの勝ち数をカウントしています。 最後にそれぞれの勝数から点数を計算して出力しています。 ITP1_9_D - Transformation文字列 str に対して、与えられた以下の命令の列を実行するプログラムです。
特筆すべきところはないのですが、Pythonでは文字列操作のメソッドがあらかじめ備わっているので このような問題はそのまま書けてしまいますね。 感想今回はPythonの文字列型にあらかじめ備わっているメソッドほぼできてしまいました。 コードを書く量が減るのでこの辺りもPythonを選ぶ理由の一つですね。
0 コメント
あなたのコメントは、承認後に掲載されます。
メッセージを残してください。 |