Acabei de experimentar um jogo chamado Couch 2048 .
(Observação: você deve entender melhor essa pergunta.)
Como não foi muito emocionante para mim, eu me perguntei: 'Quanto mais até 2048 !?'
Isso me inspirou a postar um desafio, porque calcular isso não é tão fácil quanto eu pensava.
Seu objetivo:
Dada uma lista de bolas no sofá, você deve gerar quantas bolas com um valor de 2 cairão do céu para que se possa vencer o jogo (alcançando a bola 2048).
- Suponha que a entrada seja válida.
- Suponha que o jogador não deixe cair nenhuma bola.
- Suponha que as bolas que caem do céu sempre tenham um valor 2, como eu disse.
- Exemplos de saída válidos: 3, "4", [5], ["6"]
Editar:
devo esclarecer uma coisa:
- Você precisa imprimir a menor quantidade de 2s necessária.
Casos de teste:
[2048] -> 0 você já venceu
[1024,1024] -> 0Você não precisa de mais bolas para ganhar
[1024,512,256,128,64,32,16,8,4,2] -> 1Uma bola é necessária para 'ativar a corrente'
[512] -> 768
[512,2] -> 767
[4,16,64] -> 982
Notas :
Não sou um falante nativo - diga-me se você viu um erro de digitação ou algum texto não gramatical.
Se algo não estiver claro, pergunte nos comentários.
2048e divida por 2- se assim for, você pode querer checar novamente o último caso de teste - se não, use-o como um exemplo para explicar por que a saída não é 't 982.
[4,16,64] -> 22?