Resolução de seqüências de troca secreta

12

Este é um desafio de , o tópico de policiais pode ser encontrado aqui .

Esse é o tópico dos ladrões, seu trabalho aqui é aceitar envios no tópico da polícia e tentar encontrar as seqüências ocultas. Se você encontrar alguma sequência que possa ser substituída no código original para calcular a sequência que é um crack válido. Notifique os policiais de suas rachaduras à medida que elas acontecem, para que possam atualizar suas respostas.

Pontuação

Sua pontuação será o número de rachaduras bem-sucedidas que você fez, com mais rachaduras sendo melhores.

Post Rock Garf Hunter
fonte
Por que não deixar que os ladrões comentem a sequência # no tópico da polícia?
Lynn
5
@ Lynn Eu acho que os ladrões devem ser capazes de receber votos por seu trabalho em respostas rachaduras. Eu prefiro o formato de dois threads por esse motivo.
Post Rock Garf Hunter

Respostas:

4

Python 3 : Sr. Xcoder , A010709

n=int(input())
print(sum(1for i in"A010709"if i>"0")*-~n//-~n)

Experimente online!

Além disso, aqui está uma versão em golfe do original. : P

lambda n:sum(1for i in"A017016"if i>"0")*-~n//-~n
totalmente humano
fonte
1
Bem feito ... Eu sabia que ia ser quebrado em breve
Mr. Xcoder
4

Python 3, ppperry

A018226

O código original coloca o nome da sequência em um comentário. Como o comentário provavelmente não pode afetar o código, imaginei que a sequência oculta tivesse que ser uma sub-sequência do original. Uma pesquisa rápida dos dois primeiros termos trouxe A018226. Como é uma sub-sequência, o código funciona para ambos. A018226 está listado na página da sequência original, se você olhar para trás

Uma maneira de generalizar a sequência numérica mágica em A018226.

Post Rock Garf Hunter
fonte
Essa foi a solução pretendida. Eu tive a idéia de tentar fazer as pessoas pensarem que era impossível colocando a sequência em um comentário.
pppery
@ppperry O comentário foi o que denunciou :). Achei que tinha que ser uma sub-sequência. Boa diversão de qualquer maneira!
Post Rock Garf Hunter
Talvez eu pudesse ter me escondido melhor, mas ainda é uma reviravolta interessante em comparação com as respostas típicas para esse tipo de coisa; sobre números, em vez de código.
precisa saber é
3

C #, TheLethalCoder

A000578 (cubos)

Fácil - também foi publicado aqui .

Shaggy
fonte
1
Claro, as pessoas devem parar de postar as respostas do outro desafio :)
Mr. Xcoder
3

dc , Bruce Forte

Rachado com A027480 .


fonte
Bem feito! O que deu de presente?
ბიმო
2
As operações do módulo limitam o número de sequências geradas. Nesse caso, 8 × 9 = 72. Conecte a fórmula a uma planilha e gere todas elas. Apenas um punhado de seqüências produziu todos os números inteiros para todos os termos, e aqueles supuseram que apenas as seqüências com todos os termos positivos seriam de interesse. Depois, procurou-se as seqüências e conectou novamente o número de referência. Pesquisaram cinco, três tinham entradas correspondentes, a terceira correspondia às saídas para todas as entradas.
Se ao menos eu não tivesse dividido por 2; P
4/17/17
2

Python 2 : officialaimm , A055642

lambda x:len(`x**(sum(map(int,'A055642'[1:]))==22)`) 

Experimente online!

Demorei um pouco para encontrar a sequência ... Principalmente porque a pesquisa OEIS é super lenta para mim. o0

totalmente humano
fonte
1
Bem feito. (y)
officialaimm
2

Python 3 , ppperry , A000027 -> A004526

f=lambda a,n=((int("A004526",11)-0x103519a)%100%30+1)/2:a//(14-n)

Experimente online! (imprime os primeiros termos de ambos. Observe que as duas seqüências têm compensações de 1 e 0, respectivamente, portanto a primeira tem um zero à esquerda - isso me deixou um pouco irritado!)

Jonathan Allan
fonte
2

Python 3.6 , RootTwo

O original é A005843
Rachado com A001107

Experimente online

O código de avaliação do original (menos comentários) é n*2, da versão crackeada é 4*n*n-n*3.

Depois de filtrar erros de sintaxe, variáveis ​​não declaradas, zero divisões, etc., não demorou muito para percorrer a lista restante. Havia alguns falsos positivos (como A004917) que tive que filtrar manualmente, devido apenas à verificação dos primeiros números, mas não era muito comum.

Além disso, o A040489 tenta calcular n**3436485154-n, o que me deixou um pouco mais lento. : P

Phlarx
fonte
Parabéns. É isso aí. Você força brutal? Tentei fazer o resultado de alguns IDs de sequência incorretos em Python válido para desacelerar as coisas, mas acho que não o suficiente.
RootTwo
@RootTwo eu fiz principalmente força bruta. Eu também tinha outras heurísticas, mas nada muito complexo. Demorei alguns minutos para encontrar 1107, cerca de 8 para chegar a 5843. Por curiosidade, subi para 50000. Nenhuma outra correspondência nesse intervalo. Eu acho que 15-20% eram python válidos.
Phlarx
1

Chip , Phlarx

Rachado com A060843 . Em um palpite, adivinhou que a sequência seria curta!


fonte
Você entendeu! Bom trabalho
Phlarx