#pragma GCC target("avx") #pragma GCC optimize("O3") #pragma GCC optimize("unroll-loops") #include #include #include using namespace std; using i32 = int_fast32_t; using i64 = int_fast64_t; #define rep(i, n) for (i32 i = 0; i < (i32)(n); i++) #define all(a) (a).begin(),(a).end() #define rall(a) (a).rbegin(),(a).rend() using P = pair; int main(){ ios::sync_with_stdio(false); std::cin.tie(nullptr); i32 n; cin >> n; vector a(1,1); i32 i = 1e5 + 1; while(a.size() < 10){ bool flag =true; for(i32 g = 2; g * g <= i; g++){ if(i % g == 0){ flag = false; break; } } if(flag) a.emplace_back(i); i++; } vector ans(1,1); for(i32 i = 1; i < 10; i++){ for(i32 j = 1; j < 10; j++){ ans.emplace_back(a[i] * a[j]); } } sort(all(ans)); ans.erase(unique(all(ans)),ans.end()); cout << ans[n - 1] << endl; }