Resolvendo problemas no HackerRank: O dia perfeito para ver filmes
Altencir Junior
Posted on March 14, 2023
Olá, seja bem vindo a mais um Resolvendo problemas no HackerRank: no problema de hoje,vamos ajudar Lily a encontrar um dia perfeito para ir ao cinema,baseado em alguns dias com termos específicos. Vejamos agora.
Beautiful Days at the Movies -
Conhecemos nesse problema, Lily que gosta de brincar com números inteiros. Ela criou um novo jogo onde determina a diferença entre um número e seu reverso. Nesse jogo, pegamos o um número e o subtraímos pelo seu inverso, depois calculamos sua diferença, ela quer aplicar essa regra para o dia que irá ver um filme,querendo encontrar a data para os dias perfeitos de ir ao cinema que consistem em:
- Pegar um número inteiro
- Subtrair o número inteiro por seu inverso
- Dividir o número pelo valor divisível por
k
Ela nos passa os seguintes parâmetros:
- [i] é começo dos dias em número
- [j] sua finalização
- [k] o divisor
Vejamos um exemplo abaixo:
20 23 6
20-02/6 = 3;
21-12/6 = 1.5;
22-22/6 = 0;
23-32/6 =1.5
as opções 20 e 22 são os "dias perfeitos".
Vejamos agora o execução do código:
//i= inicio do intervalo de dias para o cinema
//j= final do intervalo, numeros que pegam de inicio [i] ate [j] seriam os dois primeiros pares de numeros apresentados, sendo asssim:
// 3 parametrs:[25],[27],[4]. Temos os dias 25,26 e 27 desses pegaremos todas as opcoes e iremos pegar seu numero e subtrair por seu inverso dividio pelo numero 4(terceiro parametro),ficando:
//25- 52/4, 26-62/4 e 27-72/4.
//
function beautifulDays(i, j, k) {
// Write your code here
let count = 0;
for(let start = i; start <= j; start++){
const reverse = parseInt(start.toString().split("").reverse().join(""))
if (Math.abs(start - reverse) % k === 0) count++;
}
return count;
}
Nesse código criamos uma variável count
que irá pegar as mesmas regras anteriores ditas, e no if
onde pegaremos o valor absoluto e subtrair os valores menos o seu reverso e caso o resto de sua divisão por k
seja 0, adicione +1 a count
.
O resultado será:
20 23 6
//2 opções disponíveis
Com isso, concluímos mais um desafio do Resolvendo problemas no HackerRank: . Até a próxima!!!
Posted on March 14, 2023
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.