Skip to content
Related Articles

Related Articles

Sum of cubes of first n odd natural numbers

View Discussion
Improve Article
Save Article
  • Difficulty Level : Easy
  • Last Updated : 21 Jun, 2022

Given a number n, find sum of first n odd natural numbers.
 

Input  : 2
Output : 28
1^3 + 3^3 = 28

Input  : 4
Output : 496
1^3 + 3^3 + 5^3 + 7^3 = 496

 

A simple solution is to traverse through n odd numbers and find the sum of cubes. 
 

C++




// Simple C++ method to find sum of cubes of
// first n odd numbers.
#include <iostream>
using namespace std;
 
int cubeSum(int n)
{
    int sum = 0;
    for (int i = 0; i < n; i++)
        sum += (2*i + 1)*(2*i + 1)*(2*i + 1);
    return sum;
}
 
int main()
{
    cout << cubeSum(2);
    return 0;
}


Java




// Java program to perform sum of
// cubes of first n odd natural numbers
 
public class GFG
{
 
    public static int cubesum(int n)
    {
        int sum = 0;
        for(int i = 0; i < n; i++)
            sum += (2 * i + 1) * (2 * i +1)
                   * (2 * i + 1);
                 
        return sum;
    }
     
 
    // Driver function
    public static void main(String args[])
    {
        int a = 5;
        System.out.println(cubesum(a));
         
    }
}
 
// This article is published Akansh Gupta


Python3




# Python3 program to find sum of
# cubes of first n odd numbers.
 
def cubeSum(n):
    sum = 0
     
    for i in range(0, n) :
        sum += (2 * i + 1) * (2 * i + 1) * (2 * i + 1)
    return sum
 
# Driven code
print(cubeSum(2))
 
# This code is contributed by Shariq Raza


C#




// C# program to perform sum of
// cubes of first n odd natural numbers
using System;
 
public class GFG
{
 
    public static int cubesum(int n)
    {
        int sum = 0;
        for(int i = 0; i < n; i++)
            sum += (2 * i + 1) * (2 * i +1)
                   * (2 * i + 1);
                 
        return sum;
    }
     
 
    // Driver function
    public static void Main()
    {
        int a = 5;
        Console.WriteLine(cubesum(a));
         
    }
}
 
// This code is published vt_m


PHP




<?php
// Simple PHP method to find sum of
// cubes of first n odd numbers.
 
function cubeSum($n)
{
    $sum = 0;
    for ($i = 0; $i < $n; $i++)
        $sum += (2 * $i + 1) *
                (2 * $i + 1) *
                (2 * $i + 1);
    return $sum;
}
 
// Driver Code
echo cubeSum(2);
 
// This code is contributed by vt_m.
?>


Javascript




<script>
// Simple javascript method to find sum of cubes of
// first n odd numbers.
function cubeSum( n)
{
    let sum = 0;
    for (let i = 0; i < n; i++)
        sum += (2*i + 1)*(2*i + 1)*(2*i + 1);
    return sum;
}
 
    document.write(cubeSum(2));
 
// This code is contributed by Rajput-Ji
 
</script>


Output : 
 

28

Complexity Analysis:

Time Complexity: O(n), as we are using a single traversal in the cubeSum() function.

Space Complexity:O(1)

An efficient solution is to apply the below formula.
 

sum = n2(2n2 - 1) 

How does it work? 

We know that sum of cubes of first 
n natural numbers is = n2(n+1)2 / 4

Sum of first n even numbers is 2 *  n2(n+1)2 

Sum of cubes of first n odd natural numbers = 
            Sum of cubes of first 2n natural numbers - 
            Sum of cubes of first n even natural numbers 

         =  (2n)2(2n+1)2 / 4 - 2 *  n2(n+1)2 
         =  n2(2n+1)2 - 2 *  n2(n+1)2 
         =  n2[(2n+1)2 - 2*(n+1)2]
         =  n2(2n2 - 1)

 

C++




// Efficient C++ method to find sum of cubes of
// first n odd numbers.
#include <iostream>
using namespace std;
 
int cubeSum(int n)
{
    return n * n * (2 * n * n - 1);
}
 
int main()
{
    cout << cubeSum(4);
    return 0;
}


Java




// Java program to perform sum of
// cubes of first n odd natural numbers
 
public class GFG
{
    public static int cubesum(int n)
    {
                 
        return (n) * (n) * (2 * n * n - 1);
    }
     
 
    // Driver function
    public static void main(String args[])
    {
        int a = 4;
        System.out.println(cubesum(a));
         
    }
}
 
// This code is contributed by Akansh Gupta.


Python3




# Python3 program to find sum of
# cubes of first n odd numbers.
 
# Function to find sum of cubes
# of first n odd number
def cubeSum(n):
    return (n * n * (2 * n * n - 1))
 
# Driven code
print(cubeSum(4))
 
# This code is contributed by Shariq Raza


C#




// C# program to perform sum of
// cubes of first n odd natural numbers
using System;
 
public class GFG
{
    public static int cubesum(int n)
    {
                 
        return (n) * (n) * (2 * n * n - 1);
    }
     
 
    // Driver function
    public static void Main()
    {
        int a = 4;
        Console.WriteLine(cubesum(a));
         
    }
}
 
// This code is published vt_m.


PHP




<?php
// Efficient PHP method to
// find sum of cubes of
// first n odd numbers.
 
function cubeSum($n)
{
    return $n * $n * (2 * $n * $n - 1);
}
 
// Driver Code
echo cubeSum(4);
 
// This code is contributed by vt_m.
?>


Javascript




<script>
// javascript program to perform sum of
// cubes of first n odd natural numbers
 
function cubesum(n)
{
             
    return (n) * (n) * (2 * n * n - 1);
}
 
// Driver function
var a = 4;
document.write(cubesum(a));
 
// This code is contributed by Amit Katiyar
</script>


Output: 
 

496

Complexity Analysis:

Time Complexity: O(1)

Space Complexity: O(1)

This article is contributed by Dharmendra kumar. If you like GeeksforGeeks and would like to contribute, you can also write an article using write.geeksforgeeks.org or mail your article to review-team@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.
 


My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!