import scala.
collection.
mutable.
ArrayBuffer
def +
(that
: Rational
) = Rational
(p
* that.
q + q
* that.
p, q
* that.
q)
def *(that
: Rational
) = Rational
(p
* that.
p, q
* that.
q)
def toDouble
= p.
toDouble / q.
toDouble
}
def apply
(p
: BigInt, q
: BigInt
): Rational
= { require(q != 0)
new Rational
(p / d, q / d
) }
def apply
(n
: BigInt
): Rational
= Rational
(n,
1) }
val l
= ArrayBuffer
(Rational
(1)) l += l.last * Rational(100 - n, 100)
println((1 to 100).map(n => (n, (l(n - 1) * Rational(n, 100)).toDouble)).maxBy(_._2))
}
aW1wb3J0IHNjYWxhLmNvbGxlY3Rpb24ubXV0YWJsZS5BcnJheUJ1ZmZlcgoKb2JqZWN0IE1haW4gZXh0ZW5kcyBBcHAgewoKICBjbGFzcyBSYXRpb25hbCh2YWwgcDogQmlnSW50LCB2YWwgcTogQmlnSW50KSB7CgogICAgZGVmICsodGhhdDogUmF0aW9uYWwpID0gUmF0aW9uYWwocCAqIHRoYXQucSArIHEgKiB0aGF0LnAsIHEgKiB0aGF0LnEpCgogICAgZGVmICoodGhhdDogUmF0aW9uYWwpID0gUmF0aW9uYWwocCAqIHRoYXQucCwgcSAqIHRoYXQucSkKCiAgICBkZWYgdG9Eb3VibGUgPSBwLnRvRG91YmxlIC8gcS50b0RvdWJsZQoKICAgIG92ZXJyaWRlIGRlZiB0b1N0cmluZyA9IHMiJHAvJHEiCiAgfQoKICBvYmplY3QgUmF0aW9uYWwgewogICAgZGVmIGFwcGx5KHA6IEJpZ0ludCwgcTogQmlnSW50KTogUmF0aW9uYWwgPSB7CiAgICAgIHJlcXVpcmUocSAhPSAwKQogICAgICB2YWwgZCA9IHAgZ2NkIHEKICAgICAgbmV3IFJhdGlvbmFsKHAgLyBkLCBxIC8gZCkKICAgIH0KCiAgICBkZWYgYXBwbHkobjogQmlnSW50KTogUmF0aW9uYWwgPSBSYXRpb25hbChuLCAxKQogIH0KCiAgdmFsIGwgPSBBcnJheUJ1ZmZlcihSYXRpb25hbCgxKSkKICBmb3IgKG4gPC0gMSB0byAxMDApCiAgICBsICs9IGwubGFzdCAqIFJhdGlvbmFsKDEwMCAtIG4sIDEwMCkKCiAgcHJpbnRsbigoMSB0byAxMDApLm1hcChuID0+IChuLCAobChuIC0gMSkgKiBSYXRpb25hbChuLCAxMDApKS50b0RvdWJsZSkpLm1heEJ5KF8uXzIpKQp9Cg==