スポンサーリンク

【Python】AtCoder Beginner Contest 071 A,B問題 解答

スポンサーリンク
スポンサーリンク
この記事は約1分で読めます。

A問題 Meal Delivery

 

B問題 Not Found

 

別解 chr関数、ord関数

初めにアルファベットを定義するのがちょっと面倒でした。もっと良い解答があるんじゃないかと探していたところ、見つかりました。

ord関数というものがあるようです。

ord関数は引数に指定した文字列をUnicodeポイントに変換する関数。

chr関数は数値で指定した文字コードを返す関数。

アルファベットなどの各文字にはUnicodeポイントと呼ばれる数字が振られており、文字の大小比較などもUnicodeポイントをもとに行われているようです。

#1では”a”のUnicodeポイントを取得してtに代入しています。

コードを見るに、アルファベットのUnicodeポイントはaからzまで1ずつ増えていくので、26回のループの中で最初にaのUnicodeポイントを取得して2回目以降はループした回数分だけ数字を加えているのだと思います。

 

コメント