fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. #define ll long long
  4. #define all(v) v.begin(), v.end()
  5. #define rall(v) v.rbegin(), v.rend()
  6. #define fr(v) for (int i = 0; i < v.size(); i++)
  7. #define Fast \
  8.   ios_base::sync_with_stdio(false); \
  9.   cin.tie(NULL);
  10. void input()
  11. {
  12. if (fopen("stdin.txt", "r"))
  13. {
  14. freopen("stdin.txt", "r", stdin);
  15. freopen("stdout.txt", "w", stdout);
  16. }
  17. }
  18. ll OO = 0x3f3f3f3f;
  19. bool is_prime(ll n)
  20. {
  21. if (n < 2)
  22. return 0;
  23. else
  24. {
  25. for (ll i = 2; i <= n / i; i++)
  26. {
  27. if (n % i == 0)
  28. return 0;
  29. }
  30. }
  31. return 1;
  32. }
  33. ll power(ll b, ll n, ll m)
  34. {
  35. if (b == 0 && n == 0)
  36. {
  37. return 1;
  38. }
  39. ll res = 1;
  40. while (n > 0)
  41. {
  42. if (n % 2 != 0)
  43. {
  44. res = (res * b) % m;
  45. }
  46. b = ((b % m) * (b % m)) % m;
  47. n /= 2;
  48. }
  49. return res;
  50. }
  51. ll mod = 1e9 + 7;
  52. ll modProd(ll a, ll b)
  53. {
  54. /// complexity: 1
  55. a = (a % mod + mod) % mod;
  56. b = (b % mod + mod) % mod;
  57. return (a * b) % mod;
  58. }
  59. ll modSum(ll a, ll b)
  60. {
  61. /// complexity: 1
  62. a = (a % mod + mod) % mod;
  63. b = (b % mod + mod) % mod;
  64. return (a + b) % mod;
  65. }
  66. ll msb(ll x)
  67. {
  68. return log2(x);
  69. }
  70. long long SumOfDivisors(long long num)
  71. {
  72. long long total = 1;
  73.  
  74. for (int i = 2; (long long)i * i <= num; i++)
  75. {
  76. if (num % i == 0)
  77. {
  78. int e = 0;
  79. do
  80. {
  81. e++;
  82. num /= i;
  83. } while (num % i == 0);
  84.  
  85. long long sum = 0, pow = 1;
  86. do
  87. {
  88. sum += pow;
  89. pow *= i;
  90. } while (e-- > 0);
  91. total *= sum;
  92. }
  93. }
  94. if (num > 1)
  95. {
  96. total *= (1 + num);
  97. }
  98. return total;
  99. }
  100. vector<ll> divisors(ll n)
  101. {
  102. vector<ll> res;
  103. ll i;
  104. for (i = 1; i < n / i; i++)
  105. {
  106. if (n % i == 0)
  107. {
  108. res.push_back(i);
  109. res.push_back(n / i);
  110. }
  111. }
  112. if (i == n / i)
  113. res.push_back(i);
  114. return res;
  115. }
  116. ll N = 1e5 + 5;
  117. vector<bool> isprime(N + 1, 1);
  118. vector<int> _3_divisors, p;
  119. vector<int> vec;
  120. void seive()
  121. {
  122. isprime[0] = isprime[1] = 0;
  123. for (ll i = 2; i <= N; i++)
  124. {
  125. if (isprime[i])
  126. {
  127. p.push_back(i);
  128. for (ll j = 1LL * i * i; j <= N; j += i)
  129. isprime[j] = 0;
  130. }
  131. }
  132. for (int i = 0; i < p.size(); i++)
  133. {
  134. for (int j = i + 1; j < p.size(); j++)
  135. {
  136. if (p[i] * p[j] * 1LL > 10527451)
  137. break;
  138. vec.push_back(1LL * p[i] * p[j]);
  139. }
  140. }
  141. sort(all(vec));
  142. }
  143. int dx[4] = {-1, 1, 0, 0};
  144. int dy[4] = {0, 0, 1, -1};
  145. int k_dx[8] = {1, 2, 2, 1, -1, -2, -2, -1};
  146. int k_dy[8] = {2, 1, -1, -2, -2, -1, 1, 2};
  147. // up,down,right,left
  148. const int MAX = 1e6 + 5;
  149. ll dp[100005][10];
  150. ll pref[11][MAX], pre[MAX];
  151. void pre_compute()
  152. {
  153. for (int i = 1; i < MAX; i++)
  154. {
  155. if (isprime[i])
  156. {
  157. for (int j = i; j <= MAX; j += i)
  158. {
  159. pre[j]++;
  160. }
  161. }
  162. }
  163. pref[0][1] = 1;
  164. for (int i = 0; i <= 10; i++)
  165. {
  166. for (int j = i; j < MAX; j++)
  167. {
  168. pref[i][j] = pref[i][j - 1] + (pre[j] == i);
  169. }
  170. }
  171. }
  172. void solve()
  173. {
  174. ll n;
  175. cin >> n;
  176. cout << vec[n - 1] << "\n";
  177. }
  178. int main()
  179. {
  180. ios_base::sync_with_stdio(false);
  181. cin.tie(NULL);
  182. input();
  183. seive();
  184. int _t = 1;
  185. cin >> _t;
  186. while (_t--)
  187. {
  188. solve();
  189. }
  190. return 0;
  191. }
Success #stdin #stdout 0.32s 37716KB
stdin
Standard input is empty
stdout
0