static void Main() { var ss = new StreamScanner(new StreamReader(Console.OpenStandardInput())); var sw = new StreamWriter(Console.OpenStandardOutput()) { AutoFlush = false }; new Program().Solve(ss, sw); sw.Flush(); }
void Solve(StreamScanner ss, StreamWriter sw) { //--------------------------------- var N = ss.Next(Long); var K = ss.Next(Long); if (K == 0) { sw.WriteLine(N * N); return; } var ans = 0L; for (var i = 0; i < N; i++) { ans += Math.Max(0, N / (i + 1) * (i - K + 1)); ans += Math.Max(0, N % (i + 1) - K + 1); } sw.WriteLine(ans); //--------------------------------- }