#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Wed Aug 29 12:46:51 2018

@author: shengyeqing
"""
'''
让我们定义d
​n
​​ 为：d
​n
​​ =p
​n+1
​​ −p
​n
​​ ，其中p
​i
​​ 是第i个素数。显然有d
​1
​​ =1，且对于n>1有d
​n
​​ 是偶数。“素数对猜想”认为“存在无穷多对相邻且差为2的素数”。

现给定任意正整数N(<10
​5
​​ )，请计算不超过N的满足猜想的素数对的个数。

输入格式:
输入在一行给出正整数N。

输出格式:
在一行中输出不超过N的满足猜想的素数对的个数。
'''
import time
#获得n以内的素数所组成的列表
def prime(n):
    l_prime = [2]  
    for i in range(3,n+1,2):
        j = 2
        s = 0
        #判断整数i是否为素数
        while j < (i+1)**0.5:
            if i % j == 0:
                s = 1
                break #判断出i能被j整除即可终止判断，确定其为合数
            j +=  1
        if s == 0:
            l_prime.append(i)
    return l_prime
n = int(input())
start = time.clock()
prime_list = prime(n)
number = 0 #计算素数对的个数
for i in range(len(prime_list)-1):
    if prime_list[i+1] - prime_list[i] == 2:
        number += 1
    
end = time.clock()
print(number)    
print(end-start)
