Pagini recente » Cod sursa (job #594394) | Cod sursa (job #609384) | Cod sursa (job #751494) | Cod sursa (job #2652218) | Cod sursa (job #645289)
Cod sursa(job #645289)
#include<cstdio>
#include<cstring>
using namespace std;
long ciur( long n ){
long long j,i,M=n-1;
char mask[n];
memset( mask, 0, n / sizeof( char ) );
for( i=4; i<=n; i+=2 ){
mask[i] = 1;
--M;
}
for( i=3; i<=n; i+=2 ){
if( mask[i] == 0 ){
for( j=i*i; j<=n; j+=i ){
if( mask[j] == 0 && j % i == 0 ){
mask[j] = 1;
--M;
}
}
}
}
return M;
}
int main(){
long n;
freopen( "ciur.in", "r", stdin );
freopen( "ciur.out", "w", stdout );
scanf( "%ld", &n );
printf( "%ld", ciur( n ) );
return 0;
}