Secuencia de “Ulises” de James Joyce

La secuencia “Ulysses” de James Joyce representa el número de dígitos en N NN
Los primeros términos en la secuencia de «Ulises» de James Joyce son 
 

1, 2, 13, 155, 2185, 36306……..

Dado un número entero N , la tarea es imprimir el N-ésimo término de la secuencia de “Ulysses” de James Joyce.
Ejemplos: 
 

Entrada:
Salida:
Explicación: 
Número de dígitos en 2 22 es 2 ya que 2 22 = 16
Entrada:
Salida: 13 
 

Enfoque: El número de dígitos en Num está dado por  \lfloor (log_{10}(Num)) \rfloor + 1   . Por lo tanto, el número de dígitos en N NN está dado por 
 

\lfloor (N^{N} * log_{10}(N)) \rfloor + 1

Para ver el número de Joyce en todo su esplendor, necesitamos imprimir unos 370 millones de dígitos. Suponiendo 100 dígitos por línea y 100 líneas por página, esto implica que se necesitarían algo así como 37 volúmenes, cada uno de 1000 páginas, para escribir  N^{N^{N}}   explícitamente. La estimación de Joyce en Ulises fue de 33 volúmenes; no está mal, considerando su pésimo desempeño en matemáticas.
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 return N-th term
// of James Joyce's "Ulysses" sequence.
int nthTerm(int n)
{
    return floor(pow(n, n) * log10(n)) + 1;
}
 
// Driver Code
int main()
{
    int n = 3;
    cout << nthTerm(n);
 
    return 0;
}

Java

// Java implementation of
// the above approach
class GFG{
 
// Function to return N-th term
// of James Joyce's "Ulysses" sequence.
static int nthTerm(int n)
{
    return (int)(Math.floor(Math.pow(n, n) *
                            Math.log10(n)) + 1);
}
 
// Driver Code
public static void main(String[] args)
{
    int n = 3;
    System.out.print(nthTerm(n));
}
}
 
// This code is contributed by 29AjayKumar

Python3

# Python3 implementation of the
# above approach
import math
 
# Function to return N-th term
# of James Joyce's "Ulysses" sequence.
def nthTerm(n):
     
    return (math.floor(math.pow(n, n) *
                       math.log10(n)) + 1);
 
# Driver Code
if __name__ == "__main__" :
     
    # Given number
    n = 3;
 
    # Function call
    print(nthTerm(n));
 
# This code is contributed by rock_cool

C#

// C# implementation of
// the above approach
using System;
class GFG{
 
// Function to return N-th term
// of James Joyce's "Ulysses" sequence.
static int nthTerm(int n)
{
    return (int)(Math.Floor(Math.Pow(n, n) *
                            Math.Log10(n)) + 1);
}
 
// Driver Code
public static void Main()
{
    int n = 3;
    Console.Write(nthTerm(n));
}
}
 
// This code is contributed by Nidhi_biet

Javascript

<script>
// Javascript implementation of
// the above approach
 
    // Function to return N-th term
    // of James Joyce's "Ulysses" sequence.
    function nthTerm( n)
    {
        return parseInt( (Math.floor(Math.pow(n, n) * Math.log10(n)) + 1));
    }
 
    // Driver Code
    let n = 3;
    document.write(nthTerm(n));
 
// This code is contributed by todaysgaurav
</script>
Producción: 

13

 

Referencias: https://oeis.org/A054382
 

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 *