rendered paste bodyimport java.math.BigDecimal;
import java.math.MathContext;
public class Welcome1 {
public static BigDecimal one;
public static MathContext mc;
public static BigDecimal fac(long i) {
return fac(new BigDecimal(i, mc));
}
public static BigDecimal fac(BigDecimal i) {
if(1 == i.longValue()) {
return new BigDecimal(1, mc);
} else {
return i.multiply(fac(i.subtract(one, mc)));
}
}
public static BigDecimal oneoverfac(long i) {
return one.divide(fac(i), mc);
}
public static BigDecimal sum(int i) {
if (1 == i) {
return new BigDecimal(1, mc);
} else {
return oneoverfac(i).add(sum(i-1), mc);
}
}
public static void main(String args[]) {
mc = new MathContext(5005);
one = new BigDecimal(1, mc);
System.out.println(sum(5000));
}
}