Problem:
Score : 400 points

Problem Statement

Takahashi had a pair of two positive integers not exceeding N, (a,b), which he has forgotten.
He remembers that the remainder of a divided by b was greater than or equal to K.
Find the number of possible pairs that he may have had.

Constraints

1 \leq N \leq 10^5

0 \leq K \leq N-1

All input values are integers.

Input

Input is given from Standard Input in the following format:

N K

Output

Print the number of possible pairs that he may have had.

Sample Input 1

5 2

Sample Output 1

7

There are seven possible pairs: (2,3),(5,3),(2,4),(3,4),(2,5),(3,5) and (4,5).

Sample Input 2

10 0

Sample Output 2

100

Sample Input 3

31415 9265

Sample Output 3

287927211

Solution in C# (Mono 4.6.2.0) (judge verdict: Accepted)

using System;

namespace d
{
    class Program
    {
        static void Main(string[] args)
        {
            string[] input = Console.ReadLine().Split(' ');
            int n = int.Parse(input[0]);
            int k = int.Parse(input[1]);

            if (k == 0)
            {
                Console.WriteLine(Math.Pow(n, 2));
                return;
            }

            long count = 0;
            for (int b = k + 1; b <= n; b++)
            {
                int m = 0;
                int countByA = 0;
                while (m * b <= n)
                {
                    if ((m + 1) * b <= n)
                    {
                        countByA += b - k;
                        m++;
                        continue;
                    }

                    countByA += Math.Max(0, n - (m * b + k) + 1);
                    m++;
                }

                count += countByA;
            }

            Console.WriteLine(count);
        }
    }
}