# Sum of sum-series of first N Natural numbers

Given a natural number n, find the sum of the sum-series of the first N natural number.

Sum-Series: is sum of first N natural numbers, i.e, sum-series of 5 is 15 ( 1 + 2 + 3 + 4 + 5 ).

Example:

Input: N = 5
Output: 35
Explanation:
Sum of sum-series of {1, 2, 3, 4, 5} i.e. {1 + 3 + 6 + 10 + 15} is 35.

Input: N = 2
Output:
Explanation:
Sum of sum-series of {1, 2} i.e. {1 + 3} is 4.

Simple approach:
Find sum series for every value from 1 to N and then add it.

• Create a variable Total_sum to store the required sum series.
• Iterate over the number from 1 to N
• Find sum-series of every value by using the formulae sum = (N*(N + 1)) / 2
• Add the value to Total_sum
• In the end, print the value stored in Total_sum

Below is the implementation of the above approach:

## C++

 // C++ program to implement // the above approach #include using namespace std;   // Function to find the sum static long sumOfSumSeries(int N) {     long sum = 0L;       // Calculate sum-series     // for every natural number     // and add them     for (int i = 1; i <= N; i++)      {         sum = sum + (i * (i + 1)) / 2;     }       return sum; }   // Driver code int main() {     int N = 5;     cout << sumOfSumSeries(N); }   // This code is contributed by Code_Mech

## Java

 // Java program to implement // the above approach   class GFG {       // Function to find the sum     static long sumOfSumSeries(int N)     {           long sum = 0L;           // Calculate sum-series         // for every natural number         // and add them         for (int i = 1; i <= N; i++) {             sum = sum + (i * (i + 1)) / 2;         }           return sum;     }       // Driver code     public static void main(String[] args)     {         int N = 5;         System.out.println(sumOfSumSeries(N));     } }

## Python3

 # Python3 program to implement  # the above approach    # Function to find the sum  def sumOfSumSeries(N):        _sum = 0       # Calculate sum-series      # for every natural number      # and add them      for i in range(N + 1):          _sum = _sum + (i * (i + 1)) // 2       return _sum    # Driver code  N = 5   print(sumOfSumSeries(N))        # This code is contributed by divyamohan123

## C#

 // C# program to implement // the above approach using System; class GFG{   // Function to find the sum static long sumOfSumSeries(int N) {     long sum = 0L;       // Calculate sum-series     // for every natural number     // and add them     for(int i = 1; i <= N; i++)      {        sum = sum + (i * (i + 1)) / 2;     }           return sum; }   // Driver code public static void Main() {     int N = 5;           Console.Write(sumOfSumSeries(N)); } }   // This code is contributed by Nidhi_Biet

## Javascript

 

Output

35

Time complexity: O(N)
Auxiliary Space: O(1)

Efficient approach:
Total_sum of the above series can be calculated directly by using the below formulae:

where N is the natural number

Proof of the above formula:
Lets assume N = 5

1. Then the sum is sum of all the below elements in the table, let’s call this “result”

let’s populate the empty cells with the same value in other columns, lets’s call this “totalSum

1.

As sum of N numbers is repeated N times
totalSum = N * [(N*(N + 1))/2]
populated data = (1 times * 2) + (2 times * 3) + (3 times * 4) + (4 times * 5)
= 1*2 + 2*3 + 3*4 ……… +(N-1)*N
=[(N-1) * (N) * (N+1)]/3

1. Since,

result = totalSum – populatedData
= N * [(N*(N+1))/2] – [(N-1) * (N) * (N+1)]/3
= (N*(N+1)*(N+2))/6

1. Therefore

Below is the implementation of the above approach:

## C++

 // C++ program to implement // the above approach #include  #include  using namespace std;   // Function to find the sum long sumOfSumSeries(int n) {     return (n * (n + 1) * (n + 2)) / 6; }   // Driver code int main () {     int N = 5;     cout << sumOfSumSeries(N);     return 0; }   // This code is contributed // by shivanisinghss2110

## Java

 // Java program to implement // the above approach   class GFG {       // Function to find the sum     static long sumOfSumSeries(int n)     {         return (n * (n + 1) * (n + 2)) / 6;     }       // Driver code     public static void main(String[] args)     {         int N = 5;         System.out.println(sumOfSumSeries(N));     } }

## Python3

 # Python3 program to implement  # the above approach   # Function to find the sum  def sumOfSumSeries(n):            return (n * (n + 1) * (n + 2)) // 6   # Driver code  N = 5   print(sumOfSumSeries(N))   # This code is contributed by divyamohan123

## C#

 // C# program to implement the  // above approach using System; class GFG{   // Function to find the sum static long sumOfSumSeries(int n) {     return (n * (n + 1) * (n + 2)) / 6; }   // Driver code public static void Main(String[] args) {     int N = 5;           Console.Write(sumOfSumSeries(N)); } }   // This code is contributed by Ritik Bansal

## Javascript

 

Output

35

Time complexity: O(1), considering multiplication, addition & division takes constant time.
Auxiliary Space: O(1)

Feeling lost in the world of random DSA topics, wasting time without progress? It's time for a change! Join our DSA course, where we'll guide you on an exciting journey to master DSA efficiently and on schedule.
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 geeks!