小编don*_*ono的帖子

fizzbuzz - 可以更短吗?

警告:我不是要更好的代码,我是要为 HackerRank 提供更短的代码,只是为了了解可以做些什么来缩短它。

我是 Java 新手,正在尝试这个 FizzBu​​zz 问题:

编写一个程序,打印从 1 到 100 的数字。但是对于 3 的倍数打印 >“Fizz”而不是数字,对于 5 的倍数打印“Buzz”。对于 > 是三和五的倍数的数字,打印“FizzBu​​zz”。

我尽可能短地写了我的解决方案。

class Solution{
public static void main(String[]b){
for(int i=1;i<101;i++){
String a=(i%3==0)?(i%5==0)?"FizzBuzz":"Fizz":(i%5==0)?"Buzz":i+"";
System.out.println(a);}}}
Run Code Online (Sandbox Code Playgroud)

我得了 3.6 分。但显然还有改进的空间,因为有些人写的少了 27 个字符。这怎么可能?有什么建议?我真的不在乎排名,我只是想知道我错过了什么。

编辑:所以在你的帮助下,我做到了:

class Solution{public static void main(String[]b){for(int i=1;i<101;i++){System.out.println((i%3==0)?(i%5==0)?"FizzBuzz":"Fizz":(i%5==0)?"Buzz":i);}}}
Run Code Online (Sandbox Code Playgroud)

似乎我摆脱了 14 个字符。天知道其他人做了什么,又失去了 13 个角色。不管怎样,谢谢。

java fizzbuzz

0
推荐指数
1
解决办法
2872
查看次数

标签 统计

fizzbuzz ×1

java ×1