99人 ◼ Mamehinata ★2: AC 71人 ◼ Chiffon ★2.5: AC 65人 ◼ Rusk ★2.5: AC 23人 ◼ Mint ★3: AC 44人 ◼ Lime and Karin ★4: AC 18人 ◼ Minahoshi (Hard) ★4: AC 3人 問題セット
◼ k が小さいところは愚直に計算するとして、kが大きいところで効率的に計算できないか考えたい ◼ M = k*d + r (r < k)として表したとき、M mod k (= r)は M – k*d のように表せる ◼ k が大きいとき、dとして考えられる値の候補は少ない ◼ 具体的には、k ≧ √M のとき、d の候補は √M 以下の値しか存在しない ◼ d を固定した場合の問題については等差数列の和の形になるので、d ごとに O(1) で計算可能 k < √M と k ≧ √Mで場合分けをして、k が大きい場合は d の値に応じて解くことによって O(√M) で計算可能