AtCoderで茶色を目指す 13日目
8:00起床。前日は夜更かししてました。2日後はコンテストなので、気を引き締め直して、頑張ろうと思います。
本日の目標
本日でチュートリアルは終わります。多分。。。
今までも、〇〇を終わらせる!と意気込んでいたけど、そんなに実現させてないので、目標設定の方法を変えようかな。
備忘録
エラー:TypeError: unsupported operand type(s) for -: 'list' and 'int'
次の問題を解いているときに、吐いたエラーについてです。
問題を解く途中に自分が作ったコードです。
このコードで実行したところでエラーが出ました。
原因
エラーの文章を読むと、問題となっているのは上から3行目の部分でした。エラーを見る限り、タイプエラーなのでsum関数の使い方が間違っていると思われます。
公式のドキュメントあるsum関数の使い方です。
sum
(iterable, /, start=0)
iterableの要素の合計を出すみたいなことが書かれてました。
iterableってなんだ??
こちらのサイトを参考にしました。「いてらぶる」って読むんですね。。。
個人的、簡潔的にまとめると、「イテラブルは繰り返し処理で使えるように、複数の値を持ったもの」です。
元の問題に戻ります。問題となるコードには、定数-1が含まれています。これが原因だと思われます。
解決
実現したいことは、リスト型aにおいて偶数番目の値は-1し、その時のaの合計値を出すことです。なので、与えられたn個の商品のうちn//2個が-1になると言うことです。
これで、求めたい値を出すことができました。
反省
目標までいくことができませんでした。しかし、問題量を多くこなせてよかったです。
コンテスト頑張ります!
参考サイト
Python のイテラブル, iterable ってなに? | 民主主義に乾杯