Example #1
0
def solve():
    return xiter (xrange(len(numstr) - 4))                                     \
          .map   (lambda start: numstr[start:start + 5])                       \
          .map   (lambda substring: xiter(int(n) for n in substring))          \
          .map   (lambda numbers: numbers.product())                           \
    .max()
Example #2
0
def solve():
    return xiter(xrange(1, 1000))                                              \
        .filter (lambda n: divides(3, n) or divides(5, n))                     \
    .sum()
Example #3
0
def solve():
    ntuple = xiter(triplets())                                                 \
        .filter(lambda (x, y, z): x**2 + y**2 == z**2)                         \
    .next()
    
    return reduce(lambda x, y: x * y, ntuple)
Example #4
0
def solve():
    return xiter(products())                                                   \
        .filter(is_palindrome)                                                 \
    .max()
Example #5
0
def fibonacci():
    return xiter(_fibonacci())
Example #6
0
def naturals(start = 1):
    return xiter(_naturals(start))
Example #7
0
def without(it, *values):
    return xiter(x for x in it if x not in values)
Example #8
0
def factors(*args, **kwargs):
    return xiter(_factors(*args, **kwargs))
Example #9
0
def primes():
    return xiter(_primes())