Sum of the series 1 + (1+3) + (1+3+5) + (1+3+5+7) + …… + (1+3+5+7+…+(2n-1))

Given a positive integer n. The problem is to find the sum of the given series 1 + (1+2) + (1+2+3) + (1+2+3+4) + …… + (1+2+3+4+…+n), where i-th term in the series is the sum of first i odd natural numbers.

Examples:

```Input : n = 2
Output : 5
(1) + (1+3) = 5```
```Input : n = 5
Output : 55
(1) + (1+3) + (1+3+5) + (1+3+5+7) + (1+3+5+7+9) = 55 ```
Recommended Practice

Naive Approach: Using two loops get the sum of each i-th term and then add those sum to the final sum.

C++

 `// C++ implementation to find the ``// sum of the given series``#include ` `using` `namespace` `std;` `// function to find the ``// sum of the given series``int` `sumOfTheSeries(``int` `n)``{``    ``int` `sum = 0;``    ``for` `(``int` `i = 1; i <= n; i++) {` `        ``// first term of each i-th term``        ``int` `k = 1;``        ``for` `(``int` `j = 1; j <= i; j++) {``            ``sum += k;` `            ``// next term``            ``k += 2;``        ``}``    ``}` `    ``// required sum``    ``return` `sum;``}` `// Driver program ``int` `main()``{``    ``int` `n = 5;``    ``cout << ``"Sum = "``         ``<< sumOfTheSeries(n);``    ``return` `0;``}`

Java

 `// Java implementation to find ``// the sum of the given series``import` `java.util.*;` `class` `GFG {``    ` `    ``// function to find the sum``    ``// of the given series``    ``static` `int` `sumOfTheSeries(``int` `n)``    ``{``        ``int` `sum = ``0``;``        ``for` `(``int` `i = ``1``; i <= n; i++)``        ``{``     ` `            ``// first term of each ``            ``// i-th term``            ``int` `k = ``1``;``            ``for` `(``int` `j = ``1``; j <= i; j++)``            ``{``                ``sum += k;``     ` `                ``// next term``                ``k += ``2``;``            ``}``        ``}``     ` `        ``// required sum``        ``return` `sum;``    ``}` `    ``/* Driver program */``    ``public` `static` `void` `main(String[] args) ``    ``{``         ``int` `n = ``5``;``         ``System.out.println(``"Sum = "` `+ ``                        ``sumOfTheSeries(n));``    ``}``}` `// This code is contributed by Arnav Kr. Mandal.`

Python3

 `# Python3 implementation to find``# the sum of the given series` `# function to find the sum``# of the given series`  `def` `sumOfTheSeries(n):``    ``sum` `=` `0``    ``for` `i ``in` `range``(``1``, n ``+` `1``):` `        ``# first term of each i-th term``        ``k ``=` `1``        ``for` `j ``in` `range``(``1``, i``+``1``):``            ``sum` `+``=` `k` `            ``# next term``            ``k ``+``=` `2` `    ``# required sum``    ``return` `sum`  `# Driver program``n ``=` `5``print``(``"Sum ="``, sumOfTheSeries(n))` `# This code is contributed by "Sharad_Bhardwaj".`

C#

 `// C# implementation to find``// the sum of the given series``using` `System;` `class` `GFG {` `    ``// function to find the sum``    ``// of the given series``    ``static` `int` `sumOfTheSeries(``int` `n)``    ``{``        ``int` `sum = 0;``        ``for` `(``int` `i = 1; i <= n; i++) {` `            ``// first term of each``            ``// i-th term``            ``int` `k = 1;``            ``for` `(``int` `j = 1; j <= i; j++) {``                ``sum += k;` `                ``// next term``                ``k += 2;``            ``}``        ``}` `        ``// required sum``        ``return` `sum;``    ``}` `    ``/* Driver program */``    ``public` `static` `void` `Main()``    ``{``        ``int` `n = 5;``        ``Console.Write(``"Sum = "` `+ ``                     ``sumOfTheSeries(n));``    ``}``}` `// This code is contributed by vt_m.`

php

 ``

Javascript

 ``

Output:

`Sum = 55`

Time complexity: O(n2)

Auxiliary space: O(1)

Efficient Approach:

Let an be the n-th term of the given series.

```an = (1 + 3 + 5 + 7 + (2n-1))
= sum of first n odd numbers
= n2```

Refer this post for proof of the above formula. Now,

Refer this post for proof of the above formula.

C++

 `// C++ implementation to find the sum``// of the given series``#include ``using` `namespace` `std;` `// function to find the sum``// of the given series``int` `sumOfTheSeries(``int` `n)``{``    ``// required sum``    ``return` `(n * (n + 1) / 2) * (2 * n + 1) / 3;``}` `// Driver program to test above``int` `main()``{``    ``int` `n = 5;``    ``cout << ``"Sum = "` `<< sumOfTheSeries(n);``    ``return` `0;``}`

Java

 `// Java implementation to find ``// the sum of the given series``import` `java.io.*;` `class` `GfG {``    ` `// function to find the sum``// of the given series``static` `int` `sumOfTheSeries(``int` `n)``{``    ``// required sum``    ``return` `(n * (n + ``1``) / ``2``) *``            ``(``2` `* n + ``1``) / ``3``;``}``    `  `// Driver program to test above``public` `static` `void` `main (String[] args) ``{``    ``int` `n = ``5``;``    ` `    ``System.out.println(``"Sum = "``+ ``                ``sumOfTheSeries(n));` `}` `}` `// This code is contributed by Gitanjali.`

Python3

 `# Python3 implementation to find``# the sum of the given series` `# function to find the sum``# of the given series``def` `sumOfTheSeries( n ):``    ` `    ``# required sum``    ``return` `int``((n ``*` `(n ``+` `1``) ``/` `2``) ``*``            ``(``2` `*` `n ``+` `1``) ``/` `3``)``            ` `# Driver program to test above``n ``=` `5``print``(``"Sum ="``, sumOfTheSeries(n))` `# This code is contributed by "Sharad_Bhardwaj".`

C#

 `// C# implementation to find``// the sum of the given series``using` `System;` `class` `GfG {` `    ``// function to find the sum``    ``// of the given series``    ``static` `int` `sumOfTheSeries(``int` `n)``    ``{``        ``// required sum``        ``return` `(n * (n + 1) / 2) * ``                      ``(2 * n + 1) / 3;``    ``}` `    ``// Driver program to test above``    ``public` `static` `void` `Main()``    ``{``        ``int` `n = 5;` `        ``Console.Write(``"Sum = "` `+ ``                   ``sumOfTheSeries(n));``    ``}``}` `// This code is contributed by vt_m.`

PHP

 ``

Javascript

 ``

Output:

`Sum = 55`

Time complexity: O(1)

Auxiliary space: O(1)

Previous
Next