#include <bits/stdc++.h>
using namespace std;
long long int fx[] = {1, 0, -1, 0, -1, -1, 1, 1};
long long int fy[] = {0, 1, 0, -1, -1, 1, -1, 1};
int main() {
  long long int i, n;
  vector<long long int> ans;
  cin >> n;
  if (n == 1) cout << 1 << " " << 1 << "\n", exit(0);
  for (i = 1; i <= sqrt(n); i++) {
    if (n % i == 0) {
      ans.push_back(i);
    }
    if ((n / i) != i) {
      ans.push_back(n / i);
    }
  }
  sort(ans.begin(), ans.end());
  for (i = 0; i < ans.size(); i++) {
    if ((n / ans[i]) < ans[i]) {
      cout << ans[i] << " " << (n / ans[i]) << "\n";
      break;
    }
  }
  return 0;
}
