Cada jugador tiene un número. ¿Puede el tuyo ser el más alejado de todos?
Requisitos
Escriba una función Java, Python 2 o Ruby llamada choose()
que acepte tres argumentos:
- un número entero: el número de rondas ya completadas
- un número entero: el número de jugadores
- una serie de cadenas: los resultados de cada ronda anterior
- cada cadena es una lista de enteros separados por espacios, ordenados de menor a mayor
Por ejemplo, choose(2, 4, ["4 93 93 174", "1 84 234 555"])
significa:
- ya había dos rondas (esta es la tercera ronda)
- hay un total de cuatro jugadores
- en la primera ronda, los números elegidos fueron 4, 93, 93, 174
- en la segunda ronda, los números elegidos fueron 1, 84, 234, 555
Debe devolver un número entero del 1 al 999 (inclusive).
Para cada otro jugador, su puntaje es la raíz cuadrada de la distancia entre su número y el de ellos. Su puntaje para la ronda es el total de todos estos puntajes.
Se jugarán 100 rondas. ¡El puntaje total más alto gana!
Reglas
- Su código no puede usar ninguna E / S, incluida la consola, los archivos, la red, etc.
- No puede interferir con el programa de control ni con ningún otro jugador.
- Los programas que parecen violar las reglas anteriores serán excluidos.
- Cada llamada de una función debería tomar menos de cinco segundos en mi computadora (Intel Core i5 2450M con 8GB de RAM).
- Si un programa arroja una excepción o devuelve un valor no válido, se tratará como si devolviera 1.
- Cada usuario puede enviar como máximo un programa.
Diverso
- El programa de control está en GitHub .
- Hay tres jugadores incorporados. Se pueden encontrar en esta respuesta .
- El ganador será elegido el 28 de enero.
Tabla de clasificación
El ganador es Conservador .
Mención de honor a Gustav , el jugador con el puntaje más alto con una estrategia no constante.
- Conservador - 36226
- Alto - 36115
- FloorHugger - 35880
- NumberOne - 35791
- Sobreestimador - 35791
- Gustav - 35484
- Historiador - 35201
- Muestreador - 34960
- Incrementador - 34351
- JumpRightIn - 34074
- Vickrey - 34020
- Adolescente - 33907
- Randu - 33891
- Levantador de pesas - 33682
- Intermediario - 33647
- BounceInwards - 33529
- Desagradable matemático - 33292
- Puente - 33244
- Copycat - 33049
Los resultados completos se pueden encontrar aquí . (Recomiendo deshabilitar el ajuste de texto).