问题描述:给你一个正整数n,输出从1到n中的数字,遇到3的倍数输出Fizz,遇到5的倍数输出Buzz,遇到15的倍数输出FizzBuzz。
思路:1、取余。2、设置三个指针,每3,5,15,输出对应字符。本答案采用后者。
原答案:
public List<String> fizzBuzz(int n) {
int three=0;
int five=0;
int fifteen=0;
String s="";
List<String> list=new ArrayList<String>();
for(int i=0;i<n;i++){
if(fifteen==14){
s="FizzBuzz";
fifteen=0;
three=0;
five=0;
}else if(three==2){
three=0;
s="Fizz";
five++;
fifteen++;
}else if(five==4){
five=0;
s="Buzz";
three++;
fifteen++;
}else{
fifteen++;
three++;
five++;
s=String.valueOf(i+1);
}
list.add(s);
}
return list;
}
感觉没什么意思的一道题