You have to program the function @has_prime_chain@ below. Remember that a non negative integer is prime if and only if is greater than one and the only divisors of are one and . The following auxiliar function may be helpful.
def is_prime(n):
'''
Requires a non negative integer n.
Returns True when n is prime
Returns False when n is not prime
'''
if n < 2:
return False
d = 2
while d*d <= n:
if n%d == 0:
return False
d += 1
return True
Write a function @has_prime_chain(f, k)@ that given a list of non negative integers and an integer greater than zero returns the first valid index of where a chain of primes of size starts. If there is no such valid index it has to return . A chain of primes is a block of consecutive numbers in the list all of them being prime, delimited by non prime numbers or the ends of the list.
The function counts 100 points.
>>> has_prime_chain([6, 2, 3, 5, 2], 3) -1 >>> has_prime_chain([6, 2, 3, 5, 2], 4) 1 >>> has_prime_chain([1, 2, 3, 4, 5, 7, 11], 3) 4 >>> has_prime_chain([2, 3, 4, 5, 6, 7], 1) 3