公式虽已推出,但当n=1 时需要特判,下面代码中会提到
#include<cmath>
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int H,W,N;
while(scanf("%d%d",&H,&W),H&&W)
{
N=1;
while(fabs(log(H)/log(N+1)-log(W)/log(N))>1e-10)
N++;
if(N==1)//当N=1时(M-1)/(N-1)会RE
printf("%d ",int(log(H)/log(N+1)+0.5));//即直接输出k
else
printf("%d ",(int)((W-1)/(N-1)));
printf("%d\n",(int)(H*(1+N)-W*N));
}
return 0;
}