【python】競技プログラミング入力要綱まとめ

標準入力

pythonの勉強の習得で競技プログラミングを行うのは、言語習得の上で便利かと思いますが、今回は標準入力要綱をまとめてみました。

スペースで区切られた文字列を受け取る時(受け取り文字数無制限)

例:か つ お

またこれに、strip関数を付けるとリスト化できる

ちなみに意味は

inputで読み込んだ一行データを、rstripで受け取って、行末の改行を削除して、それをsplit関数で受け取って引数で指定したカンマで分割してリストとして代入しています

スペースで区切られた数値を受け取る時(受け取り数値無制限)

例:3 4 18

リストで収めてみました。1列+スペースがあれば限りなくnumsに代入できます。split()で受け取るので、intではなくstrになります。試しにprint(type(nums))と実験するのもいいでしょう。

数字で受け取りたい場合は

もしくは、文字数が決められていない場合は下記のように扱うのも便利です。

こうなります。

さらに各々を指定するとしたら

となります。

こちらでも使えます

複数業の場合

1段目に下段の文字段数指定、2段目以降に文字列

print時にリスト化したければ

にすれば良いのです。stripとsplit違いです。

これがリスト内包表記だと↓

1段目に下段の文字段数指定、2段目以降に数字列

複数列の場合

1段目に下段の文字段数指定、2段目に文字数指定

単語n個を配列に格納する場合

例:brazil taiwan spain

通常入力

実行結果は

内包表記の場合

実行結果は

複数行・複数列の整数値を受け取る

やや難易度が高くなりますが

例:

nは与えらえる2つの整数の行数でx_nとy_nはそれぞれ整数です。

が仮に

3

4 5

3 1

2 10

としたら結果は

多次元配列を上手に受け取る

例えば、生徒が3人いて5教科のテストの点数を編集する場合

例)
3
kenta 90 100 89 70 88
daisuke 77 86 89 71 90
jiro 90 98 87 81 93

実行結果は

この通り、0番目の名前を省略して受け取ることができます。今回の場合、0番目がstrで1番目以降をintにしたいのに、できない時はこのnumpy関数を使用します。

ちなみに、print(type(score))とすると

<class ‘numpy.ndarray’>

とprintされます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です