[Algorithm] Leetcode_ Fizz Buzz

JAsmine_log·2024년 7월 1일
0

Fizz Buzz

Problem

Given an integer n, return a string array answer (1-indexed) where:

answer[i] == "FizzBuzz" if i is divisible by 3 and 5.
answer[i] == "Fizz" if i is divisible by 3.
answer[i] == "Buzz" if i is divisible by 5.
answer[i] == i (as a string) if none of the above conditions are true.

Example 1:

Input: n = 3
Output: ["1","2","Fizz"]

Example 2:

Input: n = 5
Output: ["1","2","Fizz","4","Buzz"]

Example 3:

Input: n = 15
Output: ["1","2","Fizz","4","Buzz","Fizz","7","8","Fizz","Buzz","11","Fizz","13","14","FizzBuzz"]

Constraints:

  • 1 <= n <= 10^4

Solutions

Fizz는 3으로 나눠지는 수, Buzz는 5로 나눠지는 수, FizBuzz는 3과 5의 공배수로, 두 약수로 모두 나누어 진다.

Code

C++

class Solution
{
public:
    vector<string> fizzBuzz(int n)
    {
        vector<string> answer;
        string fizz = "Fizz";
        string buzz = "Buzz";

        for (int i = 1; i <= n; i++)
        {
            if (i % 3 == 0 && i % 5 != 0)
            {
                answer.push_back(fizz);
            }
            else if (i % 3 != 0 && i % 5 == 0)
            {
                answer.push_back(buzz);
            }
            else if (i % 3 == 0 && i % 5 == 0)
            {
                answer.push_back(fizz + buzz);
            }
            
            else{
                answer.push_back(to_string(i));
            }
        }

        return answer;
    }
};
profile
Everyday Research & Development

0개의 댓글