Open In App
Related Articles

Sum of cubes of first n odd natural numbers

Improve Article
Improve
Save Article
Save
Like Article
Like

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.
 


Last Updated : 16 Feb, 2023
Like Article
Save Article
Similar Reads
Related Tutorials