/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
/**
* とりあえず100まで
*/
private static final int MAXSIZE = 100;
public static void main
(final String[] args
) { System.
out.
println("★★★★始める"); doFizzBizz(MAXSIZE);
System.
out.
println("★★★★終わる"); }
private static void doFizzBizz(int n) {
if (n > 1) {
doFizzBizz(n - 1);
}
final StringBuilder resbuff = new StringBuilder();
resbuff
.append(calc(n, 3, "Fizz"))
.append(calc(n, 5, "Buzz"));
System.
out.
println(resbuff.
length() > 0 ? resbuff
: n
); }
/**
* vをmで割りきれたらwordを返す。
* 割り切れない場合は、""を返すのみ
* @param v
* @param m
* @param word
* @return
*/
private static CharSequence calc(final int v, final int m, final CharSequence word) {
return v % m == 0 ? word : "";
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCS8qKgoJICog44Go44KK44GC44GI44GaMTAw44G+44GnCgkgKi8KCXByaXZhdGUgc3RhdGljIGZpbmFsIGludCBNQVhTSVpFID0gMTAwOwoKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKGZpbmFsIFN0cmluZ1tdIGFyZ3MpIHsKCQlTeXN0ZW0ub3V0LnByaW50bG4oIuKYheKYheKYheKYheWni+OCgeOCiyIpOwoJCWRvRml6ekJpenooTUFYU0laRSk7CgkJU3lzdGVtLm91dC5wcmludGxuKCLimIXimIXimIXimIXntYLjgo/jgosiKTsKCX0KCglwcml2YXRlIHN0YXRpYyB2b2lkIGRvRml6ekJpenooaW50IG4pIHsKCQlpZiAobiA+IDEpIHsKCQkJZG9GaXp6Qml6eihuIC0gMSk7CgkJfQoKCQlmaW5hbCBTdHJpbmdCdWlsZGVyIHJlc2J1ZmYgPSBuZXcgU3RyaW5nQnVpbGRlcigpOwoJCXJlc2J1ZmYKCQkJLmFwcGVuZChjYWxjKG4sIDMsICJGaXp6IikpCgkJCS5hcHBlbmQoY2FsYyhuLCA1LCAiQnV6eiIpKTsKCgkJU3lzdGVtLm91dC5wcmludGxuKHJlc2J1ZmYubGVuZ3RoKCkgPiAwID8gcmVzYnVmZiA6IG4pOwoJfQoKCS8qKgoJICogduOCkm3jgaflibLjgorjgY3jgozjgZ/jgol3b3Jk44KS6L+U44GZ44CCCgkgKiDlibLjgorliIfjgozjgarjgYTloLTlkIjjga/jgIEiIuOCkui/lOOBmeOBruOBvwoJICogQHBhcmFtIHYKCSAqIEBwYXJhbSBtCgkgKiBAcGFyYW0gd29yZAoJICogQHJldHVybgoJICovCglwcml2YXRlIHN0YXRpYyBDaGFyU2VxdWVuY2UgY2FsYyhmaW5hbCBpbnQgdiwgZmluYWwgaW50IG0sIGZpbmFsIENoYXJTZXF1ZW5jZSB3b3JkKSB7CgkJcmV0dXJuIHYgJSBtID09IDAgPyB3b3JkIDogIiI7Cgl9Cn0=