DEV Community

Altencir Junior
Altencir Junior

Posted on

Resolvendo problemas no HackerRank: Anúncios virais.

Olá, seja bem vindo a mais um Resolvendo problemas no HackerRank: no problema de hoje,ver uma sequência de publicidade que crescerá cada vez mais,atingindo novos públicos, mas é claro eles tem uma regra. Vejamos agora.

Viral Advertising -

A HackerLand Enterprise está adotando uma nova estratégia de publicidade viral. Quando eles lançam um novo produto, eles o anunciam exatamente para as pessoas nas redes sociais.

No primeiro dia, temos um alcance de 5 pessoas do qual a metade inteira gostou da publicidade(5/2= 2), essas pessoas que gostaram compartilharam para mais 3. A sequência se segue da seguinte maneira:

  • n =5

Day Shared Liked Cumulative
1 5 2 2
2 6 3 5
3 9 4 9
4 12 6 15
5 18 9 24

Seguindo a tabela acima, vejamos o código:

function viralAdvertising(n) {
    // Write your code here
    let resultAdd = 0;
    let shared = 5;

      for (let i = 0; i < n; i++){
    let liked = Math.floor(shared / 2);
          resultAdd += liked;
          shared = liked * 3;
      }
    return resultAdd;
}
Enter fullscreen mode Exit fullscreen mode

Criamos duas variáveis, uma do resultado dos anúncios e outra de compartilhamentos. Depois criamos um laço for que irá iterar com um index io parâmetro n que guarda o número de dias. Depois declaramos uma variável likedque irá ser a divisão de compartilhados por 2(pegando seu valor principal) . ResultAdd que representa o resultado dos anúncios se adicionará ao resultado de likedanterior. Por último pegamos o sharede o valor de likede multiplicamos por 3, conseguindo o resultado final.

O resultado será:

3

9 // resultado
Enter fullscreen mode Exit fullscreen mode

Com isso, concluímos mais um desafio do Resolvendo problemas no HackerRank: . Até a próxima!!!

Top comments (0)