1406

整数Nが与えられるので、非負整数AとBについてA^3+B*(B+1)*(B+2)/6のうちN以下で最大のものを答えよ、という問題。


AとBはいずれも高々100程度なので、全探索するだけ。もっと複雑な式で、AとBが取り得る範囲が10000個ずつくらいあるケースを考えるなら、それぞれの結果のリストをソートしておいて、片方は先頭から、もう一方は末尾から、という感じでやると二乗にはならない。