Olá, seja bem vindo a mais um Resolvendo problemas no HackerRank: No caso de hoje, vamos encontrar o valor T individual de um contador que tem um padrão de contagem diferente do normal. Vejamos mais informações com a explicação e sua resolução.
Strange Counter -
Temos uma tabela com um contador fora do comum. A cada segmento, o número exibido por decrementa em 1 até chegar 1. Partindo para um segundo segmento o contador terá como redefinição 2x o valor inicial do segmento anterior. Podemos ver isso na imagem a seguir:
Com base nisso, queremos encontrar o valor de cada segmento duplicado. Vejamos o algoritmo:
function strangeCounter(t) {
// Write your code here
let end = 3
let size = 3
while (end<t) {
size=2*size
end+=size
}
return end-t+1
}
Temos o parâmetro t
representa a parte de tempo de cada segmento. Criamos variáveis end
e size
onde end
será o valor final de cada segmento t
e size
o seu multiplicador.
Enquanto end
for menor que t
, iremos multiplicar o valor do valor do segmento em 2, e adicionar dentro de end. Sendo assim,ao final retornamos a expressão
end-t+1`que irá trazer o valor duplicado correto de cada segmento sendo multiplicado por 2.
Seu resultado será:
4
input: 6
Assim, concluímos mais um Resolvendo problemas no HackerRank: até a próxima.
Top comments (0)