Facile 0 résolus 0 % de réussite

Fizz Buzz

Construisez une séquence en utilisant la divisibilité par 3 et 5.

Ce que vous allez apprendre

  • Tester la divisibilité par 3 et par 5
  • Ordonner correctement les branches if/else
  • Construire une liste de résultats dans une boucle

Problème

Pour chaque entier de 1 à limit inclus, utilisez Fizz pour les multiples de 3, Buzz pour les multiples de 5, et FizzBuzz pour les multiples des deux. Sinon, utilisez le nombre écrit en texte. Retournez les éléments dans l'ordre au lieu de les afficher.

Implémentez fizz_buzz(limit).

Entrée

limit : Le dernier entier à inclure.

Sortie

Retournez une liste de chaînes de caractères, une pour chaque entier de 1 à limit inclus.

Contraintes

0 ≤ limit ≤ 10 000. Une valeur de limit égale à 0 produit une liste vide.

Exemples

Exemple 1
Entrée :
limit = 5

Sortie attendue :
expected = ["1", "2", "Fizz", "4", "Buzz"]
Entrée :
long long limit = 5;

Sortie attendue :
std::vector<std::string> expected = {"1", "2", "Fizz", "4", "Buzz"};
Entrée :
long limit = 5;

Sortie attendue :
string[] expected = new string[] {"1", "2", "Fizz", "4", "Buzz"};

Explication

3 est divisible par 3 et 5 est divisible par 5. Les autres éléments gardent leur nombre.

Exemple 2
Entrée :
limit = 0

Sortie attendue :
expected = []
Entrée :
long long limit = 0;

Sortie attendue :
std::vector<std::string> expected = {};
Entrée :
long limit = 0;

Sortie attendue :
string[] expected = new string[] {};

Explication

Il n'y a pas d'entiers de 1 à 0, donc la liste est vide.

Comment l'aborder

Essayez d'abord seul, puis ouvrez les indices un par un.

Indice 1

Chaque position dépend seulement de la divisibilité du nombre courant par 3 et 5.

Indice 2

Construis la liste résultat dans l’ordre en vérifiant les deux conditions de divisibilité pour chaque nombre.

Indice 3

Gère bien la borne inférieure : si la limite est 0, la réponse est une liste vide.

Complexité attendue

temps O(n), espace supplémentaire O(n)

Références

Ce défi a été adapté pour CodeUtility. Suivez l'énoncé et les contraintes ci-dessus.

Apprenez des autres

Solutions de la communauté

Aucune solution publiée pour l'instant. Résolvez ce défi pour partager la première.