Pagini recente » Cod sursa (job #2924116) | Calibrare limite de timp | tema | Cod sursa (job #2101071) | Cod sursa (job #1408429)
#include <iostream>
#include <vector>
#include <fstream>
#include <math.h>
char ciur[2000000];
int main( int argc, char* argv[] )
{
std::ifstream input( "ciur.in" );
std::ofstream output( "ciur.out" );
int N;
input >> N;
int rad = sqrt(N);
for ( int i = 2; i <= rad; ++i )
{
int j = i * i;
while ( j < N )
{
ciur[j] = 1;
j += i;
}
}
int counter = 0;
for ( int i = 2; i < N; ++i )
{
if ( ciur[i] == 0 )
{
counter += 1;
}
}
output << counter;
input.close();
output.close();
return 0;
}