LoginSignup
0
0

More than 3 years have passed since last update.

競プロでのlistの使い方

某競プロの初心者用の問題で各桁の和を出すというものがあった。
各桁の和というものがピンとこなくて???状態であったが、解説によると例えば[14]の場合だと[ 1 + 4 ]となり、[2]の場合だと[ 0 + 2 ]のようにみるらしい。
問題はここからで、[14]のような整数を与えられた場合、pythonでどうやって[ 1 + 4 ]のように分けるのか全く想像が付かなかったが、pythonのlistを使って無理やり分けることができるので紹介したい。

解説

Python
list('14') #リストの中に文字列の14を入れる
print(list('14')) #printで出力する
['1', '4']  #このように出力される
#よって各桁の和を表現したいときは以下の記述でできます
i = 14
print(sum(list(map(int, list(str(i))))))
5 #各桁の和、つまり[ 1 + 4 ]を出力してくれている

感想

listをこのように使えるとは知らなかったので、非常に勉強になりました。

0
0
2

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
0
0