Mostrando entradas con la etiqueta números primos. Mostrar todas las entradas
Mostrando entradas con la etiqueta números primos. Mostrar todas las entradas

2016-01-17

Project Euler - Problema 7 en R

Title Continuamos con los problemas planteados en Project Euler.

Problema

By listing the first six prime numbers: 2, 3, 5, 7, 11, and 13, we can see that the 6th prime is 13.
What is the 10001st prime number?

Si listamos los primersos seis números primos: 2, 3, 5, 7, 11, y 13, observamos que el sexto número primos es 13.
¿Cuál es el número primo en la posición 10.001?

Solución

La función Primes del paquete numbers nos permite generar una lista de números primos. Después extraemos el elemento 10.001 de la lista.

require(numbers)
Primes(120000)[10001]
[1] 104743

Referencias

2015-05-27

Project Euler - Problema 5 en R

Title Continuamos con los problemas planteados en Project Euler.

Problema - Smallest multiple

2520 is the smallest number that can be divided by each of the numbers from 1 to 10 without any remainder.
What is the smallest positive number that is evenly divisible by all of the numbers from 1 to 20?

2520 es el número más pequeño que puede ser dividido por cada uno de los números del 1 al 10 sin ningún resto.
¿Cuál es el número positivo más pequeño que es divisible por todos los números del 1 al 20?

Solución

require(numbers)
mLCM(1:20)
[1] 232792560

Notas

Usamos la función mLCM para calcular el mínimo común múltiplo de los números del 1 al 20.

Otra alternativa manual sería calcular los factores primos de cada uno de los números. Después inspeccionamos visualmente los factores comunes de todos ellos.

x <- matrix(1:20)
apply(x, 1, primeFactors)
[[1]]
[1] 1

[[2]]
[1] 2

[[3]]
[1] 3

[[4]]
[1] 2 2

[[5]]
[1] 5

[[6]]
[1] 2 3

[[7]]
[1] 7

[[8]]
[1] 2 2 2

[[9]]
[1] 3 3

[[10]]
[1] 2 5

[[11]]
[1] 11

[[12]]
[1] 2 2 3

[[13]]
[1] 13

[[14]]
[1] 2 7

[[15]]
[1] 3 5

[[16]]
[1] 2 2 2 2

[[17]]
[1] 17

[[18]]
[1] 2 3 3

[[19]]
[1] 19

[[20]]
[1] 2 2 5
Los factores serían: (2^4)*(3^2)*5*7*11*13*17*19 = 232792560

Para calcular los factores primos únicos

unique(unlist(apply(x, 1, primeFactors)))
[1]  1  2  3  5  7 11 13 17 19

Referencias

2015-04-06

Project Euler - Problema 3 en R

Title Continuamos con los problemas planteados en Project Euler.

Problema

The prime factors of 13195 are 5, 7, 13 and 29.
What is the largest prime factor of the number 600851475143 ?

Los factores primos de 13.195 son 5 , 7 , 13 y 29.
¿Cuál es el mayor factor primo del número 600851475143 ?

Solución

Usando dos paquetes que calculan los factores primos de un número.

library(numbers)
max(primeFactors(600851475143))
library(gmp)
max(factorize(600851475143))
[1] 6857

Referencias

Nube de datos