Facebook Hacker Cup 2013

Hermosas palabras, alfabeto rabioso, pesos de letras, mucho procesamiento de por medio.

Consideraciones a tener en cuenta si participamos con PHP(de paso me sirve de checklist para el futuro)

1. memory_limit=3G , SI es una chanchada pero asi podrás terminar de procesar algunos retos

2. max_execution_time=360 que son los 6 minutos admitidos de procesamiento máximo aprox, preferible dejarlo a mas si se tiene una prueba de mucho procesamiento como permutaciones y combinatorias de conjunto de numeros mayores a 5.

ampliaremos… o no 🙂

EDITS

EDIT1: !:mejor usar command line

php-commandline-facebook-hackercup2013

EDIT2: segundo desafío terminado(regex rulz), el primero le falta procesamiento pero va por buen camino 🙂 (ciphers rulz)

EDIT3: si voy a probar algo exhautivo en javascript es mejor Chrome que Firefox, será por el V8 que dice tener? 🙂

EDIT 4: terminado el primer reto, las frecuencias ganan.

EDIT 5: terminado el tercer reto pero falló al procesar el archivo de entrada los 6 minutos no eran suficientes para PHP, al parecer no fué lo mas adecuado en este caso

Edit 6: el lenguaje no fue el problema, sino mas bien analizar los datos para cada serie ya que al número k+1 se volvían a repetir las salidas por tanto no era necesario continuar procesando. nice catch 🙂

Edit 7: nanomo a la próxima ronda, ronda 1, la anterior fué ronda de calificación a cual solo pasaron 10169 personas lo cual me lleva a pensar la poca concurreencia de gente que tuvo el evento o si la dificultad era demasiado lo cual no creo….

Bug en IE 6.x y 7.x

Hola a todos:

Siguiendo con la Búsqued del tesoro que bastante me tuvo sin dormir, como había adelantado en posts anteriores el Bug estaba en la página track.aspx.

Les dejo un extracto del código:
var track=new XMLHttpRequest();
track.open(‘GET’, ‘/track/trex.aspx’, false);
track.send();
var result=track.responseText;
trex=”;
trex+=result.charAt(6563);trex+=result.charAt(6563);
var ancs=document.getElementsByTagName(‘A’);
ancs[parseInt(Math.random(10)*ancs.length)].href+=
‘/?&trackid=89992578a9414815ae5c98d22459d349b35c343
f6cfc48d99deb0f4bcfab4c7d4fcb3b1763194039ac5c6851e45913bd
&trex=’+trex;

Lo complicado era el random, el trackid era único por sesion.

Aquí esta la descripción completa.

Saludos a todos.