DEV Community

Altencir Junior
Altencir Junior

Posted on

Resolvendo problemas no HackerRank: Promoção de Halloween.

Olá, seja bem vindo a mais um Resolvendo problemas no HackerRank: No caso de hoje,vamos percorrer os preços diversos que teremos numa promoção de Halloween, onde os preços dos jogos ficarão mais baixos conforme se passa . Vejamos mais informações com a explicação detalhada e sua resolução.

Sale Halloween -

Você deseja comprar videogames da famosa loja de videogames online Mist.

Normalmente, todos os jogos são vendidos pelo mesmo preço,p dólares. No entanto, eles planejam ter a venda sazonal de Halloween no próximo mês, na qual você pode comprar jogos por um preço mais barato. Especificamente, o primeiro jogo custará p dólares, e cada jogo subseqüente custará d dólares a menos que o anterior. Isso continua até que o custo se torne menor ou igual a m dólares, após o que cada jogo custará m dólares. Quantos jogos você pode comprar durante a Promoção de Halloween?

  • p= 20
  • d=3
  • m=6
  • s=70

int p: o preço do primeiro jogo
int d: o desconto do preço do jogo anterior
int m: o custo mínimo de um jogo
int s: o orçamento inicial

Image description

Vejamos a resolução em código:

function howManyGames(p, d, m, s) {
    // Return the number of games you can buy
  let finalValue = 0;
    while (s >= p) {
      finalValue++;
      s -= p;
      p -= d;

    if (p < m) p = m;
    }
  return finalValue;
}
Enter fullscreen mode Exit fullscreen mode

Criamos uma variável finalValue com custo inicial 0. Enquanto s que representa o valor final for menor ou igual a p, ele irá adicionar 1 a variável e irá subtrair o valor de s em p, e logo após subtrair o valor de p em d. E se p for menor que m, p irá receber m, e ao final retornar seu valor.

O resultado disso é:

20 3 6 80

input:6
Enter fullscreen mode Exit fullscreen mode

Assim, concluímos mais um Resolvendo problemas no HackerRank: até a próxima.

SurveyJS custom survey software

JavaScript UI Libraries for Surveys and Forms

SurveyJS lets you build a JSON-based form management system that integrates with any backend, giving you full control over your data and no user limits. Includes support for custom question types, skip logic, integrated CCS editor, PDF export, real-time analytics & more.

Learn more

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

👋 Kindness is contagious

Dive into an ocean of knowledge with this thought-provoking post, revered deeply within the supportive DEV Community. Developers of all levels are welcome to join and enhance our collective intelligence.

Saying a simple "thank you" can brighten someone's day. Share your gratitude in the comments below!

On DEV, sharing ideas eases our path and fortifies our community connections. Found this helpful? Sending a quick thanks to the author can be profoundly valued.

Okay