A conjectura de Goldbach afirma que:
todo número par maior que 2 é a soma de dois números primos.
Consideraremos uma partição Goldbach de um número n como um par de dois números primos acrescentando a n . Estamos preocupados com os números é o aumento da partição Goldbach . Medimos o tamanho das partições Goldbach de um número pelo tamanho do menor primo em todas as partições desse número. Um número é de partição crescente se esse tamanho for maior que o tamanho de todos os números pares menores.
Tarefa
Dado um número inteiro par n> 2 , determine se n está aumentando a partição Goldbach e produza dois valores únicos, um se for e outro se não for.
Isso é código-golfe , então você deve tentar minimizar o número de bytes no seu código-fonte.
code-golf
number-theory
decision-problem
primes
Caçador Ad Hoc Garf
fonte
fonte
Respostas:
Gelatina , 12 bytes
Experimente online!
Como funciona
fonte
PHP , 154 bytes
Experimente online!
Expandido
Experimente online! Verifique todos os números até 1000
fonte
JavaScript (ES6), 135 bytes
Usa uma lógica semelhante à resposta PHP de Jörg .
Demo
Mostrar snippet de código
fonte
Python 3:
156151142138136128 bytes(graças ao OP)
(graças a @Rod) (novamente) (e novamente)
fonte
max
com key retorna o elemento com valor máximo após a aplicação da tecla, tive que adicionar um aplicativo de função, mas ainda assim é mais curto.range
desde quen
é limitado por dentrolambda
.max(map(m,r[::2]))
f
e, portanto, pode salvar 2 bytes removendo of=
.Python 3:
204196 bytesBytes salvos graças a: Olm Man
Experimente online!
fonte
min
eall
podem considerar os geradores como argumentos,min([...])
podem ser reduzidos paramin(...)
o mesmo com todos. Você também pode se livrar de alguns espaços, particularmente o espaço dentroimport *
e qualquer espaço depois do aparelho, vejo que você tem um depoisrange(g)
e um antes[i for i in ...
, nem são necessários.all(n%i for i in range(2,g))
, mas você tem que mudarrange(g)
pararange(1,g)
porque isso dá um falso positivo no 1.