API caça aos ovos de Páscoa!
Existe uma API em http://easter_egg_hunt.andrewfaraday.com que fornecerá uma caça aos ovos de Páscoa especial, apenas para você ...
Você pode ver os documentos da API no endereço acima ou experimentá-lo aqui.
A API:
Todas as chamadas para esta API são solicitações GET, que retornarão uma sequência JSON.
Estes exemplos estão em um jardim 5x5, apenas para ilustração. A API realmente funcionará em um jardim de 100x100 (dos índices 1 a 100)
/new_game
Internamente, a API produz um jardim e esconde um ovo nele.
Neste exemplo, o ovo está em 4, 4
+----------+
| |
| |
| |
| |
| E |
| |
| |
| |
| |
| |
+----------+
Ligar
/new_game
Devoluções
{game_id: 'abcde'}
/guess/:game_id/:x/:y
A API olha para o jardim e informa a sua proximidade.
Se você adivinha 2 e 8 abaixo, o jardim fica assim
+----------+
| |
| |
| |
| |
| E |
| |
| |
| g |
| |
| |
+----------+
Ligar
/guess/abcde/2/8
Devoluções
{x: 'higher', y: 'lower'}
Isso significa: * Seu x está muito baixo (a posição do ovo é mais alta) * Seu y está muito alto (a posição do ovo é mais baixa)
Chamada correta:
/guess/abcde/4/4
Devoluções
{x: 'right', y: 'right', turns: 10}
As regras
Escreva um programa para encontrar o ovo da páscoa com uma API.
- Use qualquer idioma.
- Tente escrever um código conciso, mas legível.
- Seu programa DEVE chamar '/ new_game' toda vez e usar o game_id retornado em todas as chamadas de 'palpite'. Não espreitar no jardim!
- Tente terminar o jogo de forma consistente com o menor número de chamadas possível.
- Este não é um código de golfe.
Resposta competitiva?
Para ter uma chance de ganhar, aqui está o que precisamos saber:
- Qual código você está usando (na sua resposta ou no link do github, se for maior do que você gostaria de colocar em uma resposta).
- Execute seu código 10 vezes, registre o game_id e marque cada vez.
-game_id- : -score-
por exemplo
abbbbbbb : 10
abbbbbdd : 5
(Nota: os game_ids são necessários para verificar um resultado)
A pontuação será calculada assim:
- Os dois resultados mais altos e mais baixos serão ignorados.
- As 6 pontuações restantes serão somadas.
- Esta é a sua pontuação.
- Menor pontuação ganha.
Termo aditivo
Tl, dr: o aplicativo é um pouco de má qualidade.
A API foi escrita no espaço de aproximadamente 90 minutos e é implantada em um Raspberry Pi 2. Por favor, seja cuidadoso com o meu servidor de API. Se você DDOS esta coisa pobre, você pode estragar tudo para todos.
Além disso, é implementado com o NOIP para simular um endereço IP estático, mas às vezes isso desaparece por um tempo. É o que recebo por usar para hospedagem na web com orçamento zero.
Apenas para rir, aqui está uma análise estatística simples dos jogos jogados ... http://easter_egg_hunt.andrewfaraday.com/stats