leetcode:593. 有效的正方形(数学)

题目:

在这里插入图片描述

分析:

求4个点之间的距离,6条边,排序。相等关系。

代码:

double f(vector<int> p1,vector<int> p2)
{
 return sqrt( (p1[0]-p2[0])*(p1[0]-p2[0])+(p1[1]-p2[1])*(p1[1]-p2[1]));
 
}
int main()
{
 vector<int> p1; 
 vector<int> p2;
 vector<int> p3;
 vector<int> p4;
 if(p1[0]==p2[0]&&p1[1]==p2[1]) return 0;
 vector<double> v;
 v.push_back(f(p1,p2));
 v.push_back(f(p1,p3));
 v.push_back(f(p1,p4));
 v.push_back(f(p2,p3));
 v.push_back(f(p2,p4));
 v.push_back(f(p3,p4));
 sort(v.begin(),v.end());
 if(v[0]==v[1]&&v[1]==v[2]&&v[2]==v[3]&&v[4]==v[5]) return 1;
 return 0;
}
发布了196 篇原创文章 · 获赞 126 · 访问量 4652

猜你喜欢

转载自blog.csdn.net/weixin_42721412/article/details/104565002