class reverseFac {
public static float reverse(float a,float b){
if(b==2)
System.
out.
print((int)a
+" = "); float c=a/b;
if(c<1){
return 0;
}
else if(c==1){
System.
out.
println((int)b
+"!"); return b;
}
else return reverse(c,++b);
}
public static void main
(String[] args
){ reverse(3628800,2);
reverse(479001600,2);
reverse(6,2);
reverse(18,2);
}
}
Y2xhc3MgcmV2ZXJzZUZhYyB7CgkgICAgcHVibGljIHN0YXRpYyBmbG9hdCByZXZlcnNlKGZsb2F0IGEsZmxvYXQgYil7CgkJICAgIGlmKGI9PTIpCgkJICAgICAgICAJU3lzdGVtLm91dC5wcmludCgoaW50KWErIiA9ICIpOwoJCSAgICBmbG9hdCBjPWEvYjsKCQkgICAgaWYoYzwxKXsKCQkJICAgIFN5c3RlbS5vdXQucHJpbnRsbigiTk9ORSIpOwoJCQkgICAgU3lzdGVtLm91dC5wcmludGxuKCk7CgkJCSAgICByZXR1cm4gMDsKCQkgICAgfQoJCSAgICBlbHNlIGlmKGM9PTEpewoJCQkgICAgU3lzdGVtLm91dC5wcmludGxuKChpbnQpYisiISIpOwoJCQkgICAgcmV0dXJuIGI7CQkJCgkJICAgIH0KCQkgICAgZWxzZSByZXR1cm4gcmV2ZXJzZShjLCsrYik7CQkKCSAgICB9CgkgICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncyl7CgkJICAgIHJldmVyc2UoMzYyODgwMCwyKTsKCQkgICAgcmV2ZXJzZSg0NzkwMDE2MDAsMik7CgkJICAgIHJldmVyc2UoNiwyKTsKCQkgICAgcmV2ZXJzZSgxOCwyKTsKCSAgICB9CQp9