ScalaでProject Euler(129)

Problem 86

(a, b) = (3, 4)のとき、3を分割する場合の数は1で、4を分割する場合の数は2です。相似の三角形を考えると、M = 20として、前者は(15, 20)まで、後者は(18, 24)まであります。それぞれの個数は、

1 + 3 + 4 + 6 + 7 = 21
2 + 3 + 4 + 5 + 6 + 7 = 27

で、1/2の切り捨てが少しややこしいですが、まとめて数えることができます。1013で3秒、1015で23秒でした。