easy to think .... tricky to use BigInteger