Pagini recente » Cod sursa (job #1980059) | Cod sursa (job #1849314) | Cod sursa (job #2125131) | Cod sursa (job #1238080) | Cod sursa (job #2449250)
#!/usr/bin/env python3
import sys
sys.stdout = open('ciur.out', 'w')
with open('ciur.in', 'r') as f:
n = int(f.readline())
num = (n - 1) // 2 + 1
p = bytearray((n + 1) // 16 + 1)
for i in range(3, int(n ** 0.5) + 1, 2):
idx = i // 2
if not p[idx >> 3] & (1 << (idx & 7)):
for j in range(i * i, n + 1, 2 * i):
idx = j // 2
if not p[idx >> 3] & (1 << (idx & 7)):
p[idx >> 3] |= 1 << (idx & 7)
num -= 1
print(num)