import sys
def check(digit):
data = [True] * (digit + 1)
for i in range(2, int(digit ** 0.5) + 1):
if data[i]:
data[2 * i::i] = [False] * ((digit - i) // i)
return [i for i in range(2, digit + 1) if data[i]]
N = int(sys.stdin.readline().strip())
prime_number = check(N)
prime_number.append(0)
start, end = 0, 1
my_sum = prime_number[0]
answer = 0
while start < end < len(prime_number):
if my_sum == N:
answer += 1
if my_sum >= N:
my_sum -= prime_number[start]
start += 1
else:
my_sum += prime_number[end]
end += 1
print(answer)
'파이썬 코테 준비' 카테고리의 다른 글
[백준 14003] 가장 긴 증가하는 부분 수열 5 - Python(파이썬) (0) | 2021.04.03 |
---|---|
[백준 14002] 가장 긴 증가하는 부분 수열 4 - Python(파이썬) (0) | 2021.04.03 |
[백준 1806] 부분합 - Python(파이썬) (0) | 2021.03.31 |
[백준 1305] 광고 - Python(파이썬) (0) | 2021.03.31 |
[백준 11050] 이항 계수 1 - Python(파이썬) (0) | 2021.03.31 |
댓글