Pagini recente » Istoria paginii utilizator/stoyan_malinin | Cod sursa (job #2785170) | Cod sursa (job #1151229) | Cod sursa (job #1961791) | Cod sursa (job #1364940)
#include <iostream>
#include <stdio.h>
#include <math.h>
#include <vector>
using namespace std;
FILE *f = fopen( "ciur.in", "r" );
FILE *g = fopen( "ciur.out", "w" );
int main()
{
int n, count = 0;
fscanf( f, "%d", &n );
vector<bool> v( n+1, true );
int root = sqrt(n);
for( int i = 2; i <= root; i++ )
{
if( v[i] == true )
{
for( int j = i*i; j <= n; j = j + i )
{
v[j] = false;
}
}
}
for( int i = 2; i <= n; i++ )
{
if( v[i] == true )
{
count++;
}
}
fprintf( g, "%d", count );
fclose( f );
fclose( g );
return 0;
}