Parte entera de la media geométrica de los divisores de N

Dado un número entero N , la tarea es encontrar la parte entera de la media geométrica de los divisores de N . La media geométrica es un tipo especial de promedio en el que multiplicamos los números y luego sacamos una raíz cuadrada (para dos números), una raíz cúbica (para tres números), etc.
 

Ejemplos:  
Entrada: N = 4 
Salida:
Los divisores de 4 son 1, 2 y 4 
Media geométrica = (1 * 2 * 4) (1/3) = 8 (1/3) = 2
Entrada: N = 16 
Salida:
Los divisores de 16 son 1, 2, 4, 8 y 16 
Media geométrica = (1 * 2 * 4 * 8 * 16) (1/5) = 1024 (1/5) = 4 
 

Planteamiento: Se puede observar que se formará una serie para los valores de N como 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, …. cuyo término N es ⌊√n⌋ . _ A continuación se muestra la implementación del enfoque anterior: 

 

C++

// C++ implementation of the approach
#include <bits/stdc++.h>
using namespace std;
 
// Function to return the integer
// part of the geometric mean
// of the divisors of n
int geometricMean(int n)
{
    return sqrt(n);
}
 
// Driver code
int main()
{
    int n = 16;
 
    cout << geometricMean(n);
 
    return 0;
}

Java

// Java implementation of the approach
class GFG
{
 
// Function to return the integer
// part of the geometric mean
// of the divisors of n
static int geometricMean(int n)
{
    return (int) Math.sqrt(n);
}
 
// Driver code
public static void main(String []args)
{
    int n = 16;
    System.out.println(geometricMean(n));
}
}
 
// This code is contributed by Rajput-Ji

Python3

# Python3 implementation of the approach
from math import sqrt
 
# Function to return the integer
# part of the geometric mean
# of the divisors of n
def geometricMean(n) :
 
    return int(sqrt(n));
 
# Driver code
if __name__ == "__main__" :
 
    n = 16;
 
    print(geometricMean(n));
 
# This code is contributed by AnkitRai01

C#

// C# implementation of the approach
using System;   
 
class GFG
{
  
// Function to return the integer
// part of the geometric mean
// of the divisors of n
static int geometricMean(int n)
{
    return (int) Math.Sqrt(n);
}
  
// Driver code
public static void Main(String []args)
{
    int n = 16;
    Console.WriteLine(geometricMean(n));
}
}
 
// This code is contributed by PrinciRaj1992

Javascript

<script>
 
// Javascript implementation of the approach
 
// Function to return the integer
// part of the geometric mean
// of the divisors of n
function geometricMean(n)
{
    return Math.sqrt(n);
}
 
// Driver code
var n = 16;
document.write(geometricMean(n));
 
</script>
Producción: 

4

 

Complejidad de tiempo: O(1)

Espacio Auxiliar: O(1)

Publicación traducida automáticamente

Artículo escrito por spp____ 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 *