1からNまでの和
1からNまでの整数の和を求める方法は、
for文によるループ処理で求められます。
n = 10 # 1から10までの和を求める sum = 0 # 1からnまでの和の答え for i in range(n): sum += i + 1 # sum = 55
その他の方法として次の公式からも求められます。
n = 10 # 1から10までの和を求める sum = int(n * (n + 1) / 2) # 1からnまでの和の答え # sum = 55
どちらも同じ答えが求まりますが、for文では1からNまでの値を足し合わせるためN回計算を行うことになります。
競プロではプログラムの実行時間に制限があるため、計算量を減らす工夫が必要なる場合があります。
また、僕のようにプログラミング自体が遅い人はfor文を使うとさらに時間がかかってしまいますので、公式を使って解くように心掛けるようになりました。
競プロをされてる方々にはセオリーなのだと後から気づきましたが、僕はそんなことも知らずにコンテストに出てTLEが表示されてめちゃくちゃ焦りました。
そんな無謀なことを繰り返していますが、少しずつでも学んでいきたいと思います。