Pagini recente » Cod sursa (job #2516092) | Cod sursa (job #998535) | Cod sursa (job #1012406) | Cod sursa (job #671939) | Cod sursa (job #1917346)
#include <fstream>
using namespace std;
ifstream f("ciur.in");
ofstream g("ciur.out");
char c[2000001];
int main()
{
int n, nr, p, m, i;
f >> n;
for(p = 2; p * p <= n; p++)
if(c[p] == 0)
for( m = p * p; m <= n; m += p)
c[m] = 1;
nr = 0;
for( i = 2; i <= n; i++ )
if( c[i] == 0 )
nr++;
g << nr;
/*nr = n - 1; // m2 numarare deodata cu generarea sirului
for(p = 2; p * p <= n; p++) // ceva mai lenta ca prima
if(c[p] == 0)
for( m = p * p; m <= n; m += p){
if(c[m] == 0)//ne asiguram ca e prima data cand excludem numarul din multimea numerol prime
nr--;
c[m] = 1;
}
g << nr;*/
return 0;
}