Pagini recente » Cod sursa (job #2608843) | Cod sursa (job #2531531) | Cod sursa (job #2165687) | Cod sursa (job #1482123) | Cod sursa (job #3339036)
#include <cstdio>
#include <vector>
using namespace std;
const int PRIM_MAX = 5e6;
bool sieve[PRIM_MAX + 20];
void compute_sieve() {
sieve[0] = sieve[1] = true;
for (int i = 2; i * i <= PRIM_MAX; i++) {
if (!sieve[i]) {
for (int j = i * i; j <= PRIM_MAX; j += i) {
sieve[j] = true;
}
}
}
}
void compute_primes(int k) {
for (int i = 0; i < k; i++) {}
}
int main() {
freopen("prim.in", "r", stdin);
freopen("prim.out", "w", stdout);
compute_sieve();
int k;
scanf("%d", &k);
unsigned long long int result = 0;
k++;
for (int i = 0; i < PRIM_MAX && k > 0; i++) {
if (sieve[i] != 0) continue;
result = i * 1LL;
k--;
}
printf("%lld\n", (result * result));
return 0;
}