传送门
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
const int MAXN=1e12+10;
long long gcd(long long x,long long y)
{
while(y^=x^=y^=x%=y);
return x;
}
int main()
{
ios::sync_with_stdio(false);
long long x,a,b;
a=b=MAXN;
cin>>x;
for(long long i=1;i*i<=x;i++)
{
if(x%i==0&&max(a,b)>max(i,x/i)&&gcd(i,x/i)==1)
{
a=i;
b=x/i;
}
}
cout<<a<<" "<<b;
return 0;
}