Facile 0 risolte 0% di accettazione

Fizz Buzz

Costruisci una sequenza usando la divisibilità per 3 e 5.

Cosa imparerai

  • Verificare la divisibilità per 3 e per 5
  • Ordinare correttamente i rami if/else
  • Costruire una lista di risultati in un ciclo

Problema

Per ogni intero da 1 fino a limit, usa Fizz per i multipli di 3, Buzz per i multipli di 5 e FizzBuzz per i multipli di entrambi. Altrimenti usa il numero scritto come testo. Restituisci le voci in ordine invece di stamparle.

Implementa fizz_buzz(limit).

Input

limit: L'ultimo intero da includere.

Output

Restituisci una lista di stringhe, una per ogni intero da 1 a limit.

Vincoli

0 ≤ limit ≤ 10.000. Un limit pari a 0 produce una lista vuota.

Esempi

Esempio 1
Input:
limit = 5

Output atteso:
expected = ["1", "2", "Fizz", "4", "Buzz"]
Input:
long long limit = 5;

Output atteso:
std::vector<std::string> expected = {"1", "2", "Fizz", "4", "Buzz"};
Input:
long limit = 5;

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

Spiegazione

3 è divisibile per 3 e 5 è divisibile per 5. Le altre voci mantengono il loro numero.

Esempio 2
Input:
limit = 0

Output atteso:
expected = []
Input:
long long limit = 0;

Output atteso:
std::vector<std::string> expected = {};
Input:
long limit = 0;

Output atteso:
string[] expected = new string[] {};

Spiegazione

Non ci sono interi da 1 a 0, quindi la lista è vuota.

Come affrontarlo

Prova prima da solo, poi apri un suggerimento alla volta.

Suggerimento 1

Ogni posizione dipende solo dalla divisibilità del numero corrente per 3 e 5.

Suggerimento 2

Costruisci la lista risultato in ordine controllando entrambe le condizioni di divisibilità per ogni numero.

Suggerimento 3

Gestisci bene il limite inferiore: se il limite è 0, il risultato è una lista vuota.

Complessità attesa

tempo O(n), spazio aggiuntivo O(n)

Riferimenti

Questa sfida è adattata per CodeUtility. Segui la traccia e i vincoli sopra.

Impara dagli altri

Soluzioni della community

Nessuna soluzione pubblicata. Risolvi questa sfida per condividere la prima.