#include <vector>
#include <iostream>
unsigned long primes = 0;
int main() {
int number = 10000000;
std::vector<bool> sieve(number,false);
sieve[0] = sieve[1] = true;
for(int i = 2; i<number; i++) {
if(!sieve[i]) {
++primes;
for (int temp = 2*i; temp<number; temp += i)
sieve[temp] = true;
}
}
std::cout << "found: " << primes << " Primes\n";
return 0;
}
I2luY2x1ZGUgPHZlY3Rvcj4KI2luY2x1ZGUgPGlvc3RyZWFtPgoKdW5zaWduZWQgbG9uZyBwcmltZXMgPSAwOwoKaW50IG1haW4oKSB7CiAgICBpbnQgbnVtYmVyID0gMTAwMDAwMDA7CiAgICBzdGQ6OnZlY3Rvcjxib29sPiBzaWV2ZShudW1iZXIsZmFsc2UpOwogICAgc2lldmVbMF0gPSBzaWV2ZVsxXSA9IHRydWU7CgogICAgZm9yKGludCBpID0gMjsgaTxudW1iZXI7IGkrKykgewogICAgICAgIGlmKCFzaWV2ZVtpXSkgewogICAgICAgICAgICArK3ByaW1lczsKICAgICAgICAgICAgZm9yIChpbnQgdGVtcCA9IDIqaTsgdGVtcDxudW1iZXI7IHRlbXAgKz0gaSkKICAgICAgICAgICAgICAgIHNpZXZlW3RlbXBdID0gdHJ1ZTsKICAgICAgICB9CiAgICB9CiAgICBzdGQ6OmNvdXQgPDwgImZvdW5kOiAiIDw8IHByaW1lcyA8PCAiIFByaW1lc1xuIjsKICAgIHJldHVybiAwOwp9Cg==