# The sum of the squares of the first ten natural numbers is,

        # 1^2 + 2^2 + ... + 10^2 = 385
        # The square of the sum of the first ten natural numbers is,

        # (1 + 2 + ... + 10)^2 = 55^2 = 3025
        # Hence the difference between the sum of the squares of the first ten natural numbers and the square of the sum is 3025 − 385 = 2640.

        # Find the difference between the sum of the squares of the first one hundred natural numbers and the square of the sum.

        # Notes:
        # Sum of the squares: (n(n+1)(2n+1)) / 6
        # Square of the sum: (n(n+1) / 2 ) * (n(n+1) / 2 )

        require "benchmark"

        def differenceSSBetweenSS(number)
            sumOfSquare = (number * (number + 1) * (2 * number + 1)) / 6
            squareOfSum = (number * (number + 1) / 2) * (number * (number + 1) / 2)
            squareOfSum - sumOfSquare
        end

        time = Benchmark.realtime do
            puts differenceSSBetweenSS(100)
        end

        puts "Time elasped #{time*1000} milliseconds"

        # Output:
        # 25164150
        # Time elasped 0.044 milliseconds