Ejemplo n.º 1
0
def spread(N):
    if N == 1:
        return 0
    else:
        # most waiters = sum(greatest k such that p**k <= N over p a prime less than or equal to N)
        #              = pi(n) + pi(n**1/2) + pi(n**1/3) + pi(n**1/4) + ..              # by counting
        # fewest waiters = pi(n)
        answer = 1
        k = 2
        x = kth_root(N, k)
        while x >= 2:
            answer += primes.count(x)
            k += 1
            x = kth_root(N, k)
        return answer
Ejemplo n.º 2
0
def spread(N):
    if N == 1:
        return 0
    else:
        # most waiters = sum(greatest k such that p**k <= N over p a prime less than or equal to N)
        #              = pi(n) + pi(n**1/2) + pi(n**1/3) + pi(n**1/4) + ..              # by counting
        # fewest waiters = pi(n)
        answer = 1
        k = 2
        x = kth_root(N,k)
        while x >= 2:
            answer += primes.count(x)
            k += 1
            x = kth_root(N,k)
        return answer
Ejemplo n.º 3
0
def test_kth_root():
    assert kth_root(125, 3) == 5
    assert kth_root(125, 2) == 11
    assert kth_root(125, 1) == 125
Ejemplo n.º 4
0
def test_kth_root():
    assert kth_root(125, 3) == 5
    assert kth_root(125, 2) == 11
    assert kth_root(125, 1) == 125