Você trabalha em uma empresa que faz um jogo online de fantasia e sobrevivência.
Quando um jogador termina uma fase, ele recebe pontos de energia. A quantidade de energia recebida depende de quais itens mágicos o jogador encontrou ao explorar aquela fase.
Sua tarefa é escrever o código que calcula os pontos de energia concedidos aos jogadores quando eles completam uma fase.
Os pontos concedidos dependem de duas coisas:
Os pontos de energia são concedidos de acordo com as seguintes regras:
Vamos ver um exemplo:
O jogador completou a fase 20 e encontrou dois itens mágicos com valores base de 3 e 5.
Para calcular os pontos de energia ganhos pelo jogador, precisamos encontrar todos os múltiplos únicos desses valores base que sejam menores que a fase 20.
{3, 6, 9, 12, 15, 18}
{5, 10, 15}
{3, 5, 6, 9, 10, 12, 15, 18}
3 + 5 + 6 + 9 + 10 + 12 + 15 + 18 = 78
Este exercício exige que você processe uma coleção de dados. Você pode simplificar seu código usando LINQ (Language Integrated Query). Para mais informações, veja esta página.
Crie sua conta no Exercism para aprender e dominar C# com 62 conceitos178 exercícios e mentoria humana de verdade, tudo de graça.