Todo jogador tem um número. O seu pode ser o mais distante deles?
Exigências
Escreva uma função Java, Python 2 ou Ruby nomeada choose()
que aceite três argumentos:
- um inteiro - o número de rodadas já concluídas
- um número inteiro - o número de jogadores
- uma matriz de strings - os resultados de cada rodada anterior
- cada sequência é uma lista de números inteiros separados por espaço, classificados do menor para o maior
Por exemplo, choose(2, 4, ["4 93 93 174", "1 84 234 555"])
significa:
- já havia duas rodadas (esta é a terceira rodada)
- há um total de quatro jogadores
- na primeira rodada, os números escolhidos foram 4, 93, 93, 174
- na segunda rodada, os números escolhidos foram 1, 84, 234, 555
Você deve retornar um número inteiro de 1 a 999 (inclusive).
Para cada outro jogador, sua pontuação é a raiz quadrada da distância entre seu número e o deles. Sua pontuação para a rodada é o total de todas essas pontuações.
100 rodadas serão jogadas. A pontuação total mais alta vence!
Regras
- Seu código não pode usar nenhuma E / S, incluindo console, arquivos, rede, etc.
- Você não pode interferir com o programa de controle ou com outros jogadores.
- Programas que parecem violar as regras acima serão excluídos.
- Cada chamada de uma função deve levar menos de cinco segundos no meu computador (Intel Core i5 2450M com 8 GB de RAM).
- Se um programa lançar uma exceção ou retornar um valor inválido, será tratado como se retornasse 1.
- Cada usuário pode enviar no máximo um programa.
Diversos
- O programa de controle está no GitHub .
- Existem três players embutidos. Eles podem ser encontrados nesta resposta .
- O vencedor será escolhido no dia 28 de janeiro.
Entre os melhores
O vencedor é Conservator .
Menção honrosa a Gustav , o jogador com maior pontuação com uma estratégia não constante.
- Conservator - 36226
- Alto - 36115
- FloorHugger - 35880
- NumberOne - 35791
- Superestimador - 35791
- Gustav - 35484
- Historiador - 35201
- Amostrador - 34960
- Incrementador - 34351
- JumpRightIn - 34074
- Vickrey - 34020
- Adolescente - 33907
- Randu - 33891
- Halterofilista - 33682
- Middleman - 33647
- BounceInwards - 33529
- NastyMathematician - 33292
- Jumper - 33244
- Copiador - 33049
Os resultados completos podem ser encontrados aqui . (Eu recomendo desativar a quebra de texto.)