算法:412. Fizz Buzz
Posted 架构师易筋
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了算法:412. Fizz Buzz相关的知识,希望对你有一定的参考价值。
412. Fizz Buzz
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
if non 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 <= 104
不用余数发,效率高
class Solution {
public List<String> fizzBuzz(int n) {
int fizz = 1, buzz = 1;
List<String> list = new ArrayList<>();
for (int i = 1; i <= n; i++) {
if (fizz == 3 && buzz == 5) {
list.add("FizzBuzz");
fizz = 0;
buzz = 0;
} else if (fizz == 3) {
list.add("Fizz");
fizz = 0;
} else if (buzz == 5) {
list.add("Buzz");
buzz = 0;
} else {
list.add(Integer.toString(i));
}
fizz++;
buzz++;
}
return list;
}
}
以上是关于算法:412. Fizz Buzz的主要内容,如果未能解决你的问题,请参考以下文章