Seção Policiais
A seção de ladrões pode ser encontrada aqui .
Agradecemos a FryAmTheEggman , Peter Taylor , Nathan Merrill , xnor , Dennis , Laikoni e Mego por suas contribuições.
Desafio
Sua tarefa é escrever 2 programas diferentes ( programas / funções completos / etc. ) Na mesma linguagem e na mesma versão (por exemplo, Python 3.5 ≠ Python 3.4, para que isso não seja permitido) e quando fornecido n (usando argumentos STDIN / function / etc. ), calcule a (n) onde a é uma sequência OEIS de sua escolha. Um desses programas é mais curto que o outro. Você só precisa enviar o programa mais longo dos dois. O outro precisa ser salvo caso não seja quebrado após 7 dias. Seu envio é quebrado quando seu programa é ultrapassado (seja por 1 byte ou mais).
Por exemplo, se a tarefa que você escolheu foi executar 2 × n , este poderia ser um envio válido (no Python 2):
Python 2, 16 bytes, pontuação = 15/16 = 0,9375
print(2*input())
Calcula A005843 , (deslocamento = 0).
Se o seu envio foi quebrado, você precisa declarar isso no cabeçalho da seguinte forma:
Python 2, 16 bytes, pontuação = 15/16 = 0,9375, [rachado] + link
print(2*input())
Calcula A005843 , (deslocamento = 0).
Deslocamento
Isso pode ser encontrado em todas as páginas OEIS. Por exemplo, para A005843 , o deslocamento é 0,2
. Nós só precisamos usar o primeiro, que é 0
. Isso significa que a função está definida para todos os números ≥ 0.
Em outras palavras, a função OEIS (n) começa com n = 0 . Seu programa precisa funcionar para todos os casos fornecidos pelo OEIS.
Mais informações podem ser encontradas aqui .
Pontuação
A pontuação que você obtém para o envio é igual à seguinte fórmula:
Pontuação = Comprimento (em bytes) do código secreto ÷ Comprimento (em bytes) do código público
O exemplo acima tem a pontuação 15 ÷ 16 = 0,9375.
A finalização com a menor pontuação vence. Somente envios que postaram sua solução serão elegíveis para ganhar.
Regras
- A tarefa que você precisa fazer é uma sequência OEIS de sua escolha.
- Dado n , output OEIS (n) . O desvio não é permitido, portanto, é necessário produzir exatamente a mesma sequência (quando fornecido n, é necessário gerar OEIS (n)).
- Os envios que não forem quebrados dentro de um período de 7 dias serão considerados seguros após a publicação da solução (envios com mais de 7 dias que não tiveram sua solução publicada ainda serão vulneráveis a serem quebrados).
- Em seu envio, você precisa postar o seguinte: nome do idioma , contagem de bytes , código completo , para que não haja links de pastas etc. (para evitar respostas como Unary), sequência OEIS , pontuação com os comprimentos de ambos os programas e, adicionalmente, a codificação que é usado.
- Nota: a mesma sequência não pode ser postada duas vezes no mesmo idioma. (Por exemplo, se a sequência A005843 tiver sido executada em Pyth, não será possível usá-lo novamente para a mesma sequência.)
- Entrada e saída estão em decimal (base 10)
Entre os melhores
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script><style>table th,table td{padding: 5px;}th{text-align: left;}.score{text-align: right;}table a{display: block;}.main{float: left;margin-right: 30px;}.main h3,.main div{margin: 5px;}.message{font-style: italic;}#api_error{color: red;font-weight: bold;margin: 5px;}</style> <script>QUESTION_ID=88979;var safe_list=[];var uncracked_list=[];var n=0;var bycreation=function(x,y){return (x[0][0]<y[0][0])-(x[0][0]>y[0][0]);};var byscore=function(x,y){return (x[0][1]>y[0][1])-(x[0][1]<y[0][1]);};function u(l,o){jQuery(l[1]).empty();l[0].sort(o);for(var i=0;i<l[0].length;i++) l[0][i][1].appendTo(l[1]);if(l[0].length==0) jQuery('<tr><td colspan="3" class="message">none yet.</td></tr>').appendTo(l[1]);}function m(s){if('error_message' in s) jQuery('#api_error').text('API Error: '+s.error_message);}function g(p){jQuery.getJSON('//api.stackexchange.com/2.2/questions/' + QUESTION_ID + '/answers?page=' + p + '&pagesize=100&order=desc&sort=creation&site=codegolf&filter=!.Fjs-H6J36w0DtV5A_ZMzR7bRqt1e', function(s){m(s);s.items.map(function(a){var he = jQuery('<div/>').html(a.body).children().first();he.find('strike').text('');var h = he.text();if (!/cracked/i.test(h) && (typeof a.comments == 'undefined' || a.comments.filter(function(b){var c = jQuery('<div/>').html(b.body);return /^cracked/i.test(c.text()) || c.find('a').filter(function(){return /cracked/i.test(jQuery(this).text())}).length > 0}).length == 0)){var m = /^\s*((?:[^,;(\s]|\s+[^-,;(\s])+).*(0.\d+)/.exec(h);var e = [[n++, m ? m[2]-0 : null], jQuery('<tr/>').append( jQuery('<td/>').append( jQuery('<a/>').text(m ? m[1] : h).attr('href', a.link)), jQuery('<td class="score"/>').text(m ? m[2] : '?'), jQuery('<td/>').append( jQuery('<a/>').text(a.owner.display_name).attr('href', a.owner.link)) )];if(/safe/i.test(h)) safe_list.push(e);else uncracked_list.push(e);}});if (s.items.length == 100) g(p + 1);else{var s=[[uncracked_list, '#uncracked'], [safe_list, '#safe']];for(var i=0;i<2;i++) u(s[i],byscore);jQuery('#uncracked_by_score').bind('click',function(){u(s[0],byscore);return false});jQuery('#uncracked_by_creation').bind('click',function(){u(s[0],bycreation);return false});}}).error(function(e){m(e.responseJSON);});}g(1);</script><link rel="stylesheet" type="text/css" href="//cdn.sstatic.net/Sites/codegolf/all.css?v=7509797c03ea"><div id="api_error"></div><div class="main"><h3>Uncracked submissions</h3><table> <tr> <th>Language</th> <th class="score">Score</th> <th>User</th> </tr> <tbody id="uncracked"></tbody></table><div>Sort by: <a href="#" id="uncracked_by_score">score</a> <a href="#" id="uncracked_by_creation">creation</a></div></div><div class="main"><h3>Safe submissions</h3><table> <tr> <th>Language</th> <th class="score">Score</th> <th>User</th> </tr> <tbody id="safe"></tbody></table></div>
Nota
Este desafio está terminado. O vencedor final é feersum com sua resposta Seed . Parabéns! :).
Você ainda pode enviar novos policiais, mas lembre-se de que eles não estão mais competindo.