Nota: este desafío está terminado. Las presentaciones son bienvenidas pero no pueden ganar.
Este es el hilo conductor de la policía. El hilo de los ladrones va aquí .
Escriba un código que genere el entero 1
. Si agrega, elimina o sustituye un solo carácter (de su elección), el código debería generar el entero 2
. Cambie un carácter más (el mismo u otro), y el código debería salir 3
. Continúe así todo lo que pueda, pero hasta un máximo de 10. Formatos de salida predeterminados como ans = 1
los aceptados. Puede ignorar la salida a STDERR (o equivalente).
Debe revelar el idioma, el recuento de bytes de su código inicial, la cantidad de enteros para los que funciona, así como una cantidad opcional de caracteres del código inicial. Nota: No tiene que revelar ningún personaje, pero recuerde que revelar personajes podría dificultar a los ladrones, ya que deben usar el mismo personaje en la misma posición. Puede elegir qué carácter usar para denotar caracteres no revelados (por ejemplo, subrayado), pero asegúrese de especificar esto.
Los policías pueden proporcionar el código no descifrado después de una semana y llamar al envío "SEGURO". El envío ganador será el envío sin descifrar más corto que produce el número 10. Si no hay envíos sin descifrar capaces de imprimir 10, el código más corto que produce 9 ganará, y así sucesivamente. Tenga en cuenta que los ladrones no tienen que hacer los mismos cambios que usted, y no tienen que reproducir el código exacto (a menos que revele todos los caracteres). Solo deben reproducir la salida.
Las presentaciones publicadas después del 24 de noviembre son bienvenidas pero no son elegibles para la victoria (porque probablemente habrá menos ladrones).
Publicación de ejemplo:
La siguiente publicación es una presentación en el idioma MyLang
, tiene una longitud de 9 bytes y funciona para los números 1 a 8.
MyLang, 9 bytes, 8 números
Esta presentación funciona durante 1 - 8. No Revelados caracteres se indican con un guión: _
.
abc____i
Tabla de clasificación
Descargo de responsabilidad: la tabla de clasificación no se prueba y es posible que los envíos no descifrados no aparezcan en la lista.
<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=99546;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>
1
salga, entonces parece que CJam es una mala elección de lenguaje para este desafío. No hay forma de evitar que los ladrones hagan eso.
10
. Esa regla está en su lugar porque muchas presentaciones probablemente se pueden extender al infinito (en teoría), por lo que la puntuación basada en el número más alto alcanzado no tendría sentido.
cracked
de alguna forma. Esto es lo que hace actualmente el script de usuario de rediseño .
1
, ¿cómo puedo evitar que los ladrones agreguen)
repetidamente para generar el resto de los números? Lo mismo sería válido para bastantes idiomas