Последние пару недель игрался на Скале с задачами с
http://projecteuler.net/, и заодно подсадил на это дело жену. Мне программы писать неинтересно, интересно сделать в пару функциональных строчек в интерпретаторе, благо у Скалы есть консоль, и она хорошо оптимизирует tail-рекурсию. Когда одна
(
Read more... )
Comments 4
Reply
Сейчас попробовал, работает примерно со скоростью J.
scala> val ps = primeStream(2, Nil).take(1500).toList
scala> (2 to 1999999).foldLeft(BigInt(0))( (x: BigInt, y: Int) => x + (if (ps forall (p => y <= p || y % p>0)) y else 0))
res23: scala.math.BigInt = ..censored..
Да еще и красивая симметричная конструкция образовалась:
p => y <= p
:)
Reply
Марина от неожиданности так испугалась, что чуть не
выронила сумку.
...
- А там вон, - ответила она, и показала совком в сторону
прилавков, - только там нет больше. Кончился.
Reply
P.S. Цитата порадовала, спасибо. Даже перечитать захотелось как-нибудь.
Reply
Leave a comment