/***********
小易有一个圆心在坐标原点的圆,小易知道圆的半径的平方。小易认为在圆上的点而且横纵坐标都是整数的点是优雅的,
小易现在想寻找一个算法计算出优雅的点的个数,请你来帮帮他。
例如:半径的平方如果为25
优雅的点就有:(+/-3, +/-4), (+/-4, +/-3), (0, +/-5) (+/-5, 0),一共12个点。
**********/
#include <iostream>
using namespace std;
void main()
{
int rr;
double r=0;
cin>>rr;
r=sqrt(rr);
int x=int(r);
int count=0;
for (int xi=x;xi>0;xi--)
{
int yi=r-xi;
while (rr>=xi*xi+yi*yi)
{
if (rr==xi*xi+yi*yi)
{
count++;
break;
}
yi++;
}
}
cout<<4*count;
}
转载于:https://www.cnblogs.com/fushuixin/p/7413208.html