Pagini recente » Cod sursa (job #1694300) | Cod sursa (job #2800115) | Cod sursa (job #689924) | Cod sursa (job #3154995) | Cod sursa (job #1251848)
//
// main.cpp
// Ciur
//
// Created by Andru Zuniga on 23.10.2014.
// Copyright (c) 2014 Zuniga Andru Felipe. All rights reserved.
//
#include <fstream>
#include <vector>
#include <cmath>
#include <bitset>
using namespace std;
int n;
int numerePrime = 0;
bitset<2000000> neprime;
int main(int argc, const char * argv[]) {
ifstream f("ciur.in");
f >> n;
f.close();
// neprime.resize(n + 1);
int radical = sqrt(n);
for (int i = 2; i <= radical; i++) {
if (!neprime[i]) {
numerePrime++;
for (int j = i + i; j <= n; j += i) {
neprime.set(j, 1);
}
}
}
for (int i = radical + 1; i <= n; i++) {
if (!neprime[i]) {
numerePrime++;
}
}
ofstream g("ciur.out");
g << numerePrime;
g.close();
return 0;
}