Consecutive Prime Sum
Some prime numbers can be expressed as Sum of other consecutive prime numbers.
For example
5 = 2 + 3 17 = 2 + 3 + 5 + 7 41 = 2 + 3 + 5 + 7 + 11 + 13
Your task is to find out how many prime numbers which satisfy this property are present in the range 3 to N subject to a constraint that summation should always start with number 2.
Write code to find out number of prime numbers that satisfy the above mentioned property in a given range.
Input Format:
First line of input contains k
- the number of inputs
The next k
lines contains a number N.
Output Format:
Print the total number of all such prime numbers which are less than or equal to N.
Example:
Input:
k = 2 N = 20 N = 15
Output:
2 (there are 2 such numbers: 5 and 17)
1
Solution:
def isprime(p):
if(p==0):
return 0
elif(p==1):
return 0
else:
for i in range(2,int(p**.5)+2):
if(p%i==0):
return 0
return 1
k=int(input())
for i in range(k):
n=int(input())
c=0
s=2
for j in range(3,n):
if(isprime(j)):
s=s+j
if(s<=n):
if(isprime(s)):
c=c+1
print(c)
Comments
Post a Comment