Cod sursa(job #2000058)

Utilizator IulianaBinzarIuliana Binzar IulianaBinzar Data 12 iulie 2017 16:22:21
Problema Ciurul lui Eratosthenes Scor 20
Compilator cpp Status done
Runda make_lasm_great_again Marime 0.42 kb
#include <iostream>
#include <cstdio>

using namespace std;

bool viz[2000004];
unsigned long int k;

int main(){
	freopen("ciur.in","r",stdin);
	freopen("ciur.out","w",stdout);
	unsigned long int n;
	cin>>n;
	for(unsigned long int i=2;i<=n;i++)if(!viz[i]){
		unsigned long int temp=i*i;
		if(temp>n)break;
		else for(int j=i;j<=n;j++)viz[j*i]=1;
	}
	for(unsigned long int i=2;i<=n;i++)if(!viz[i])k++;
	cout<<k;
}