#include<fstream>
using namespace std;
ifstream fin("date.in");
ofstream fout("date.out");
struct punct {float x,y; };
void citire(punct &p)
{
fin>>p.x>>p.y;
}
float dist(punct a, punct b)
{
return sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y));
}
int patrat(punct a, punct b, punct c, punct d)
{
float d1, d2, d3, d4, d5, d6;
d1=dist(a,b);
d2=dist(b,c);
d3=dist(c,d);
d4=dist(d,a);
d5=dist(a,c);
d6=dist(b,d);
if(d1==d2 && d2==d3 && d3==d4 && d4==d1 && d5==d6) return 1;
else return 0;
}
int main()
{
int n,i,j,k,l;
float max=0;
punct a[100];
fin>>n;
for(i=1;i<=n;i++) citire(a[i]);
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
for(k=1;k<=n;k++)
for(l=1;l<=n;l++)
if(i!=j && i!=k && i!=j && j!=k && j!=l && k!=l)
if(patrat(a[i],a[j],a[k],a[l]))
if(dist(a[i],a[j])>max)
max=dist(a[i],a[j]);
fout<<max;
fin.close();
fout.close();
return 0;
}
|