Problem 120

(a-1)^n + (a+1)^n == r (mod a^2)とする.あるaについてnを変えることでrも変化するが,このときrの最大値をr_maxとする(例えばa=7に対しn=3の時r=42でありこれが最大値なのでr_max=42).3≦a≦1000に対しΣr_maxを求めよ.
最初brute forceでやって1分かかったけど他の人の解答を見て30ms(& 1行)になった.最初単純なミスをしていてこの回答に辿りつけ無かったのが悔しい.

sum(sapply(3:1000, function(a) ifelse(a %% 2 == 1, a^2 -a, a^2 - 2*a)))