#include #include using namespace std; vector sieve(int n) { vector res(n); for (int i = 0; i < n; i++) { res[i] = 1; } if (n >= 2) res[0] = res[1] = 0; else { for (int i = 0; i < n; i++) { res[i] = 0; } } for (int i = 2; i*i < n; i++) { if (res[i] == 1) { for (int j = 2 * i; j < n; j += i) { res[j] = 0; } } } return res; } int main() { long long n; cin >> n; if (n % 2 == 0) { cout << 2 << " " << n / 2 << endl; return 0; } vector v = sieve(n); for (int i = 2; i < n; i++) { if (n%i == 0 && v[i] == 1) { cout << i << " " << n/i << endl; return 0; } } cout << 1 << " " << n << endl; return 0; }