ARC125 B - Squares
https://atcoder.jp/contests/arc125/tasks/arc125_b
自分の解法メモです。
問題
整数 が与えられる. 以下の条件を満たす整数の組 の個数を998244353で割った余りを求めよ.
- は平方数(0も平方数とする)
制約
考察
以下、は制約を満たすものとします。
を固定したとき、これを満たす整数の個数は からまでの個。
はを満たす必要があるので、が動く範囲は。
コード概要
long long total = 0; for(long long k = 1; k * k <= N; ++k) { total += (k * k + N) / (2 * k) - k + 1; total %= MOD; } cout << total << endl;