您的位置:首页 > 职场人生

lintcode-简单- Fizz Buzz 问题

2017-02-16 13:27 513 查看
给你一个整数n. 从 1 到 n 按照下面的规则打印每个数:
如果这个数被3整除,打印
fizz
.
如果这个数被5整除,打印
buzz
.

如果这个数能同时被
3
5
整除,打印
fizz
buzz

样例:

比如 n = 
15
, 返回一个字符串数组:
[
"1", "2", "fizz",
"4", "buzz", "fizz",
"7", "8", "fizz",
"buzz", "11", "fizz",
"13", "14", "fizz buzz"
]


思考:这里其实可以用stringbuilder的追加方法返回字符串,但是lintcode要求返回一个ArrayList,所以就就直接用ArrayList<String>的对象返回。
这里注意以下判断顺序,先判断是否能被15整除,再判断能被5正穿,最后判断能否被3整除

AC代码:
class Solution {
/**
* param n: As description.
* return: A list of strings.
*/
public ArrayList<String> fizzBuzz(int n) {
ArrayList<String> results = new ArrayList<String>();
for (int i = 1; i <= n; i++) {
if (i % 15 == 0) {
results.add("fizz buzz");
} else if (i % 5 == 0) {
results.add("buzz");
} else if (i % 3 == 0) {
results.add("fizz");
} else {
results.add(String.valueOf(i));
}
}
return results;
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息