ツバサの備忘録

主に備忘録代わりに精進記録を載せていくつもりです。

diverta 2019 Programming Contest D - DivRem Number

問題
提出コード

解法

問題の条件を整理すると、
N \  mod \  m = xとして、

  • m \times x + x = N

となるので、つまり、

  • (m+1)x = N

となります。
ということで、 m \gt 0かつNを割り切るようなmの総和が答えとなるので、O(\sqrt{N})で約数を列挙し、その総和を求めれば良いです。

感想

割り算の式を思い出すと、ぱっと解ける問題でした。
結構な速度で解けたので満足です。