📄 2645(2).cpp
字号:
#include <stdio.h>
#include <iostream>
int main()
{
__int64 a,b,tmp;
int f,st,ed,mid,i;
while(scanf("%I64d%I64d",&a,&b)&&(a||b))
{
if(a==b)
{
printf("2 0\n");
continue;
}
else if(a==0)
{
printf("0 2\n");
continue;
}
f=0;
for(i=2;i<=50000;i++)
{
st=1,ed=i-1;
while(st<=ed)
{
mid=(st+ed)/2;
tmp=(b-a)*mid*mid-a*(i-mid)*(i-mid)-2*a*mid*(i-mid)+a*(i-mid)-(b-a)*mid;
if(tmp>0) ed=mid-1;
else if(tmp<0) st=mid+1;
else
{
f=1;
printf("%d %d\n",mid,i-mid);
break;
}
if(f) break;
}
if(f) break;
}
if(!f) printf("impossible\n");
}
system("pause");
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -