Construya un Array de tamaño N cuya suma del cubo de todos los elementos sea un cuadrado perfecto

Dado un número entero N , la tarea es construir una array ordenada arr[] de tamaño N , tal que la suma del cubo de todos los elementos sea un cuadrado perfecto, es decir  \sum_{}A_i^3=X^2  , donde X es un número entero.

Ejemplos:  

Entrada: N = 5 
Salida: 1 2 3 4 5 
Explicación 
Suma del cubo de todos los elementos = 1 + 8 + 27 + 64 + 125 = 225 
que es un número cuadrado perfecto.

Entrada: N = 1 
Salida:
 

Enfoque de solución: 

  1. La suma de los cubos del primer N número natural viene dada por:
    (\frac{N \times(N+1)}{2})^2
  2. Entonces, la suma es en sí misma, un cuadrado perfecto del número entero X^2&=(\frac{N \times(N+1)}{2})^2
  3. Por  lo tanto X&=(\frac{N \times(N+1)}{2})  , que no es más que la suma de N números naturales.
  4. Entonces, solo imprima los primeros N números naturales para construir la array.

A continuación se muestra la implementación del enfoque anterior: 

C++

// C++ implementation of the
// above approach
 
#include <bits/stdc++.h>
using namespace std;
 
// Function to construct an array
// of size N
void constructArray(int N)
{
    for (int i = 1; i <= N; i++) {
 
        // Prints the first N
        // natural numbers
        cout << i << " ";
    }
}
 
// Driver code
int main()
{
    int N = 5;
    constructArray(N);
    return 0;
}

Java

// Java implementation of the
// above approach
class GFG{
     
// Function to construct an array
// of size N
public static void constructArray(int N)
{
    for(int i = 1; i <= N; i++)
    {
        
       // Prints the first N
       // natural numbers
       System.out.print(i + " ");
    }
}
 
// Driver Code
public static void main(String[] args)
{
    int N = 5;
    constructArray(N);
}
}
 
// This code is contributed by divyeshrabadiya07   

Python3

# Python3 implementation of the
# above approach
 
# Function to construct an array
# of size N
def constructArray(N):
     
    for i in range(1, N + 1):
         
        # Prints the first N
        # natural numbers
        print(i, end = ' ')
         
 
# Driver code
if __name__=='__main__':
     
    N = 5
     
    constructArray(N)
 
# This code is contributed by rutvik_56   

C#

// C# implementation of the
// above approach
using System;
class GFG{
     
// Function to construct an array
// of size N
public static void constructArray(int N)
{
    for(int i = 1; i <= N; i++)
    {
         
        // Prints the first N
        // natural numbers
        Console.Write(i + " ");
    }
}
 
// Driver Code
public static void Main(String[] args)
{
    int N = 5;
    constructArray(N);
}
}
 
// This code is contributed by sapnasingh4991

Javascript

<script>
 
// JavaScript implementation of the
// above approach
 
// Function to construct an array
// of size N
function constructArray(N)
{
    for(let i = 1; i <= N; i++)
    {
         
        // Prints the first N
        // natural numbers
        document.write(i + " ");
    }
}
 
// Driver code
let N = 5;
 
constructArray(N);
 
// This code is contributed by Surbhi Tyagi.
 
</script>
Producción: 

1 2 3 4 5

 

Complejidad temporal: O(N)  
Espacio auxiliar: O(1)
 

Publicación traducida automáticamente

Artículo escrito por koulick_sadhu y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *