Seqüências de roubo: Policiais


10

Isso é . Este é o tópico Cops . Para o tópico de ladrões, clique aqui .

Eu notei vários desafios OEIS (Enciclopédia on-line de sequências inteiras) desde que entrei no site. Parece justo que tenhamos um desafio de policiais e ladrões que determina quem é o mestre das seqüências inteiras on-line, de uma vez por todas.

Editar: a fim de evitar respostas triviais, os policiais perdem 1/2 ponto para cada envio quebrado. Além disso, para os propósitos deste desafio, seqüências constantes não são permitidas. Isso se aplica apenas às soluções postadas após esta edição.

Policiais

Escreva um programa ou função que, sem entrada, imprima deterministicamente qualquer sequência do OEIS . Ao excluir alguns subconjuntos de caracteres, seu programa deve ser capaz de imprimir uma sequência OEIS diferente quando executado no mesmo idioma. A nova sequência deve ser totalmente nova, não apenas a primeira com um nome diferente ou com um deslocamento diferente. Nenhuma sequência pode ser simplesmente um valor constante repetido.

Você deve fornecer a primeira função, juntamente com o nome da sequência OEIS, para que a correção possa ser verificada. Tudo bem se o comportamento for questionável em relação ao valor MAX_INT ou 256 do seu idioma, o que for maior.

Ladrões

Exclua caracteres do envio de alguns policiais para que seu novo programa produza qualquer outra sequência do OEIS. Forneça a nova função junto com o nome da nova sequência OEIS. Aqui está um utilitário para garantir que seu envio seja válido (ou seja, exclua caracteres sem nenhum assunto engraçado. Não verifica a sequência em si).

É do seu interesse excluir o maior número possível de caracteres do envio do policial. Se outro ladrão (qualquer um, exceto o policial que criou o programa original) aparecer e encontrar uma solução mais curta que encontre outra sequência diferente , esse ladrão roubará seu argumento. (Observe que simplesmente jogar fora os caracteres e imprimir a mesma sequência não é suficiente para roubar o argumento.)

Regras e Pontuação

Se, após uma semana, ninguém tiver conseguido decifrar sua solução, você poderá marcá-la como segura fornecendo o segundo programa juntamente com o nome da sequência gerada.

Você ganha um ponto para cada postagem segura e um ponto para cada envio que você quebrar. Policiais perdem 1/2 ponto para cada envio quebrado. Observe que outro ladrão pode roubar seu ponto da submissão rachada a qualquer momento, fornecendo um programa mais curto que produz uma sequência diferente.

Os policiais podem postar apenas um desafio por idioma, por pessoa.

O jogador com mais pontos às 12:00 UTC de 7 de julho vence.



11
Esse desafio é extremamente semelhante. Não vou enganar, mas acho que isso provavelmente é uma duplicata.
FryAmTheEggman

11
@FryAmTheEggman ah, não vi isso. Eu não acho que seja um absurdo, pois prejudica a distância = / exclusões e os ladrões têm muito mais margem de manobra para encontrar respostas indesejadas, mas é mais parecido do que eu gostaria.
precisa

11
Obrigado, @rogaos. Essa era a resposta que eu esperava para a primeira pergunta, então não se preocupe. Tenho algumas idéias para os policiais, espero que eu tenha alguns minutos pela manhã para trabalhar com eles.
Shaggy

3
Penso que a distância entre golfe e Levenstein torna isso substancialmente diferente. Os policiais precisam considerar soluções potenciais drasticamente diferentes.
Nathan Merrill

Respostas:



1

C, A000217, 239 bytes Rachado

Isso não é então eu não me incomodei.

#include <stdio.h>
#include <limits.h>
int main()
{
    int i, n, temp = 0;
    for(i = 0; i < INT_MAX; i++)
    {
        n = 0;
        temp = i;
        while(temp)
            n+=temp--;
        printf("%d, ", n);
    }
    return 0;
}

Sequência: https://oeis.org/A000217


11
@rogaos O que está rachado deste código não é constante (pelo menos, o que eu estou ciente de)
Govind Parmar

Editado em bytes para conveniência do ladrão.
Stephen


@rogaos Eu acho que isso poderia ser quebrada melhor que a minha, tornando constante, mas eu acho que é mais interessante para ser não-constante, então eu votaria para que isso não seja uma exceção à regra constante
nmjcman101

11
@ nmjcman101 justo o suficiente, pois Govind não pretendia que fosse uma constante. Excluindo meu comentário acima.
precisa

1

Python 2, 273 bytes, quebrado

Sequência inicial: A004442

import zlib, base64;exec(zlib.decompress(base64.b64decode('eJzLtDUAAAHoANc=')))
while True:print eval(zlib.decompress(base64.b64decode('eJwzAgAAMwAz')))^eval(zlib.decompress(base64.b64decode('eJwzjssEAAHBAPs='))),;exec(zlib.decompress(base64.b64decode('eJzL1LY1BAAC1AED')))

Experimente online!



2
Mega rachado (eu acho)
Stephen

1

MOO, 86 bytes, seguro

a=0;b=1;while(a>-1)a=$math_utils:sum(a,a);a=max(1,a);notify(player,tostr(a));endwhile

Imprime potências de dois (A000079).

Solução:

a = 1; while (a> -1) a = $ math_utils: sum (a, a, a); notify (player, tostr (a)); endtime (que imprime poderes de 3 (A000244))


0

PHP , 20 bytes Rachado

for(;;)echo+!$i,",";

Experimente online!

sequência de impressão https://oeis.org/A000012


Sua versão original quebra esta versão.
precisa


Você tinha uma solução em mente para a primeira? Nesse caso, você deve reverter.
precisa

11
@rogaos, eu quebrei a versão atual sem ver que ela havia mudado. Reverter causaria uma bagunça.
Peter Taylor

11
@rogaos Você deve proibir sequências que retornam um valor constante
Jörg Hülsermann

0

cQuents (confirmação mais antiga), 10 bytes, com falha

=0,1,1:z+y

Ainda é uma linguagem fortemente WIP, mas corrigi o intérprete para que funcionasse. Clique no nome do idioma para o link do Github.

Isso gera a sequência de Fibonnacci : A000045

Explicação:

(porque não tenho documentação e não espero que você leia meu código de intérprete)

=0,1,1      Set start to [0,1,1]
      :     Mode: sequence
       z+y  Each term is the previous two terms added together
            Because there is no input, output the whole sequence

Se sequências constantes ainda fossem permitidas, isso seria super fácil de roubar.



Esta linguagem é excelente #
23417 vroomfondel

@rogaos não é feito ainda, em nenhum lugar perto, mas obrigado :)
Stephen
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.