题目意思及分析:
http://acm.hdu.edu.cn/showproblem.php?pid=4143
/**
*@xiaoran
*数学题,题意:求满足y*y=x*x+n的最小x,我们可以转化为
*y*y-x*x=n --> (y+x)*(y-x)=n进行进行求解,注意此时k1=(y+x)和
*k2=(y-x)是n的因子,y=(k1+k2)/2; x=(k1-k2)/2;
*注意我们求的是x最小,需要从大到小模拟n的因子,知道找到结果退出
*或者不存在
*/
AC代码:
#include
#include
#include