#pragma GCC optimize("Ofast") #include <bits/stdc++.h> using namespace std; typedef long long int ll; typedef unsigned long long int ull; mt19937_64 rng(chrono::steady_clock::now().time_since_epoch().count()); ll myRand(ll B) { return (ull)rng() % B; } inline double time() { return static_cast<long double>(chrono::duration_cast<chrono::nanoseconds>(chrono::steady_clock::now().time_since_epoch()).count()) * 1e-9; } int main(){ cin.tie(nullptr); ios::sync_with_stdio(false); vector<int> v; v.push_back(1<<23); v.push_back(1<<24); // gcdが2^i for (int i = 22; i >= 0; --i) { int u = (1<<i); int uu = v.back()/u; while (uu*u <= v.back()) uu += 1; if (uu % 2 == 0) uu += 1; while (1) { if (gcd(uu*u, v.back()) == u) { v.push_back(uu*u); break; } uu += 2; } } int n; cin >> n; v.resize(n); for (int i = 0; i < n; ++i) { cout << v[i] << " "; } cout << endl; }