Open In App

Print n numbers such that their sum is a perfect square

Last Updated : 20 Dec, 2022
Comments
Improve
Suggest changes
Like Article
Like
Report

Given an integer n, the task is to print n numbers such that their sum is a perfect square.
Examples: 

Input: n = 3 
Output: 1 3 5 
1 + 3 + 5 = 9 = 32


Input: n = 4 
Output: 1 3 5 7 
1 + 3 + 5 + 7 = 16 = 42 

Approach: The sum of first n odd numbers is always a perfect square. So, we will print the first n odd numbers as the output.
Below is the implementation of the above approach: 

C++
// C++ implementation of the approach
#include <bits/stdc++.h>
using namespace std;

// Function to print n numbers such that
// their sum is a perfect square
void findNumbers(int n)
{
    int i = 1;
    while (i <= n) {

        // Print ith odd number
        cout << ((2 * i) - 1) << " ";
        i++;
    }
}

// Driver code
int main()
{
    int n = 3;
    findNumbers(n);
}
Java
// Java implementation of the approach
import java.util.*;
import java.io.*;
class GFG {

    // Function to print n numbers such that
    // their sum is a perfect square
    static void findNumbers(int n)
    {
        int i = 1;
        while (i <= n) {

            // Print ith odd number
            System.out.print(((2 * i) - 1) + " ");
            i++;
        }
    }

    // Driver code
    public static void main(String args[])
    {
        int n = 3;
        findNumbers(n);
    }
}
Python3
# Python3 implementation of the approach 

# Function to print n numbers such that 
# their sum is a perfect square 
def findNumber(n):
    i = 1
    while i <= n:

        # Print ith odd number 
        print((2 * i) - 1, end = " ")
        i += 1

# Driver code     
n = 3
findNumber(n)

# This code is contributed by Shrikant13
C#
// C# implementation of the approach
using System;
public class GFG {

    // Function to print n numbers such that
    // their sum is a perfect square
    public static void findNumbers(int n)
    {
        int i = 1;
        while (i <= n) {

            // Print ith odd number
            Console.Write(((2 * i) - 1) + " ");
            i++;
        }
    }

    // Driver code
    public static void Main(string[] args)
    {
        int n = 3;
        findNumbers(n);
    }
}

// This code is contributed by Shrikant13
PHP
<?php
// PHP implementation of the approach

// Function to print n numbers such that
// their sum is a perfect square
function findNumbers($n)
{
    $i = 1;
    while ($i <= $n) 
    {

        // Print ith odd number
        echo ((2 * $i) - 1) . " ";
        $i++;
    }
}

// Driver code
$n = 3;
findNumbers($n);

// This code contributed by PrinciRaj1992
?>
JavaScript
<script>

// JavaScript implementation of the approach

// Function to print n numbers such that
// their sum is a perfect square
function findNumbers(n)
{
    var i = 1;
    while (i <= n) {

        // Print ith odd number
        document.write(((2 * i) - 1)+" ") ;
        i++;
    }
}

var n = 3;
    findNumbers(n);

</script>

Output
1 3 5 

Time Complexity: O(N), as we are using a loop to traverse N times so it will cost us O(N) time.
Auxiliary Space: O(1), as we are not using any extra space.


Similar Reads