fundo
Quando eu estava no ensino fundamental, costumávamos jogar um jogo na aula de matemática que é o seguinte.
Todas as crianças se sentam em um grande círculo e se revezam na contagem, começando em 1 .
No entanto, os seguintes números devem ser ignorados durante a contagem:
- Números que são múltiplos de 3 .
- Números que têm um 3 em sua representação decimal.
Os 15 primeiros números que as crianças devem dizer são
1 2 4 5 7 8 10 11 14 16 17 19 20 22 25
Sempre que alguém erra um número - diz um número que não está na sequência ou pula um número que está - ele é removido do círculo. Isso continua até restar apenas um garoto.
Tarefa
Você é ruim neste jogo, então decide trapacear. Escreva um programa ou uma função que, dado um número da sequência, calcule o próximo número da sequência.
Você não precisa manipular números que não podem ser representados usando o tipo numérico nativo do seu idioma, desde que seu programa funcione corretamente até a entrada 251 e que seu algoritmo funcione para entradas arbitrariamente grandes.
Entrada e saída podem usar qualquer base conveniente.
Como você precisa ocultar seu código, ele deve ser o mais curto possível. De fato, isso é código-golfe , então o código mais curto em bytes vence.
Casos de teste
1 -> 2
2 -> 4
11 -> 14
22 -> 25
29 -> 40
251 -> 254
7
foi ignorado quando eu o toquei, mas você diria outra coisa, em vez de ir para o próximo número da fila.