Skip to content

Instantly share code, notes, and snippets.

@yuda110
Created April 29, 2016 13:42
Show Gist options
  • Save yuda110/2a03d2b8029a2a7bbddff8aacfe80d89 to your computer and use it in GitHub Desktop.
Save yuda110/2a03d2b8029a2a7bbddff8aacfe80d89 to your computer and use it in GitHub Desktop.
#여전히 함수인 수 찾기(11개)
#조건
#1)끝자리나 시작자리가 무조건 3 혹은 7일 것
#2)시작과 끝자리 사이에 들어가는 수는 짝수나 5, 혹은 0이 아닐 것
import primesieve
def is_prime(num):
if primesieve.generate_n_primes(1, num)[0] == num:
pass
else :
return False
return True
def is_still_prime(num):
str_num =str(num)
for i in range(len(str_num)):
delete_left_side_num = int(str_num[i:])
delete_right_side_num = int(str_num[:i+1])
if is_prime(delete_left_side_num) and is_prime(delete_right_side_num) :
pass
else:
return False
return True
def get_still_prime_sum(range_from, range_to):
prime_list = primesieve.generate_primes(range_from, range_to)
result_cnt = 0
result_sum = 0
for prime in prime_list:
if is_still_prime(prime):
result_sum += prime
result_cnt += 1
if result_cnt == 11 :
break
return result_sum
print(get_still_prime_sum(10, 1000000))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment