#include<bits/stdc++.h>
#define ll long long int
using namespace std;
vectorprime_vec;
void prime_sieve() { // prime sieve
const int size_of_sieve = 10000005;
bitset<size_of_sieve>sieve;
sieve.set();
sieve[0] = sieve[1] = 0;
prime_vec.push_back(2);
for (ll i = 3; i <= size_of_sieve; i += 2) {
if (sieve[i]) {
prime_vec.push_back(i);
for (ll j = i * i; j <= size_of_sieve; j += i) {
sieve[j] = 0;
}
}
}
return;
}
int main() {
ll n; cin >> n;
prime_sieve();
cout << prime_vec[n - 1];
return 0;
}
// working fine on sublime