/*
分析:
下面的摘是杭电课件里面的分析:
摘:
p,q的范围其实可在2—50000(why?)
然而,这是最小的范围吗?
考虑大于10000的某个质数,不妨设为Q,另一个质数为P,则:
1、如果P<10,P/Q<0.001
2、如果P>10,P*Q>100000
而考虑到a,b的取值范围(1<=a<=b<=1000)
可知min(a/b)=0.001
同时,要求: p*q<=m<=100000
所以无论如何质数都不能超过10000。(事实上,不会超过9091)
2012-04-20
*/
#include"stdio.h"
#include"string.h"
#include"math.h"
int main()
{
int prime[2000],k;
int num[10001];
int i,l;
int temp;
int m;
double a,b;
double limit;
int w,h;
double max;
memset(num,0,sizeof(num));
num[0]=num[1]=1;
k=0;
for(i=2;i<=10000;i++)
{
if(num[i]==0)
{
for(temp=2*i;temp<=10000;temp+=i)
num[temp]=1;
prime[k]=i;
k++;
}
}
while(scanf("%d%lf%lf",&m,&a,&b),m!=0||a!=0||b!=0)
{
limit=a/b;
max=0;
for(i=k-1;i>=0;i--)
{
for(l=i;l>=0;l--)
{
if(prime[i]>m||prime[l]>m||prime[i]*prime[l]>m)
continue;
if((double)prime[l]/prime[i]<limit)
continue;
if(prime[i]*prime[l]>max)
{
max=prime[i]*prime[l];
w=prime[i];
h=prime[l];
}
}
}
printf("%d %d\n",w>h?h:w,w>h?w:h);
}
return 0;
}