Bem-vindo ao bar piNapple, Melbourne. Todos os melhores jogadores de código estão aqui, com seus laptops, coquetéis de amostra e programação cada vez mais mal.
Sinto uma necessidade especial de enfatizar novamente o último ponto. Cada vez mais mal. O álcool pode fazer coisas engraçadas na lógica de programação.
Então - alguns dos jogadores de golfe estavam tentando algumas peças aninhadas em idiomas cada vez mais exóticos. Alguém acertou a quarta ordem em INTERCAL. Então o fluxo de álcool parou. Ele bêbado, acidentalmente excluiu os algoritmos de leitura de código de barras de um computador completamente diferente ... que nem estava conectado a nenhuma rede! (Crianças - não INTERCAL. Por você. Por sua família.)
Normalmente, isso não seria um grande problema. Mas, alguns golfistas haviam projetado o sistema anos atrás, e nenhum dos códigos de barras era padrão. Assumindo que 1 são linhas e 0 são espaço, todos começam com 101 e terminam com 1001. Tudo no meio é codificado em ASCII de 7 bits.
O barkeep possui um grande e sofisticado leitor de código de barras que retornará uma seqüência de comprimento arbitrário (embora menor que 300 bits) de 1 e 0, via STDIN, argumento ou arquivo, dependendo do seu programa. E pode vir para a frente ou para trás, dependendo de como a garrafa está sendo mantida. Seu programa deve retornar a string do meio do código de barras, via STOUT ou arquivo.
Infelizmente, ele não gastou tanto em seu armazenamento, então o programa com a menor fonte será escolhido e ganhará bebidas gratuitas e tutoriais de programação bêbados dos outros jogadores.
Boa sorte!
101...1001
ou1001...101
e inverta no último caso, e empacote o centro em bytes.Respostas:
GolfScript, 30 caracteres
A entrada é fornecida no STDIN. Exemplo :
fonte
J - 35 bytes
Explicação em breve :).
fonte
Pyth , 21
Explicação:
Observe que, embora a pergunta seja mais antiga que o idioma, a existência da pergunta não influenciou o design do idioma de forma alguma, porque ainda não a vi antes.
Ainda regras são regras, então estou fazendo CW.
fonte
AWK, 116 bytes
Sei que esta pergunta não viu muito amor, mas estava curiosa sobre ver e
AWK
resolver. Isso não é tão inteligente, mas parece funcionar e não vejo áreas óbvias para o golfe. Inicialmente, eu invertei a string quando necessário, mas isso acrescentou mais bytes do que apenas ajustar a lógica de incremento para retroceder.fonte