平面点可以组成多少正方形

pmars 2010-05-10 08:51:30
输入n个平面点的坐标,输出这n个点能够组成多少个正方形!
大家发表一下意见~!~
...全文
534 19 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
pmars 2010-05-12
  • 打赏
  • 举报
回复
一天不来,帖子到最下面了,恩,算法区好活跃啊!

用二分做的,复杂度为N^2*logN
哈希是在不知道用什么来做key!(试过了,结果是超时)
zeroieme 2010-05-12
  • 打赏
  • 举报
回复
[Quote=引用 18 楼 pmars 的回复:]

一天不来,帖子到最下面了,恩,算法区好活跃啊!

用二分做的,复杂度为N^2*logN
哈希是在不知道用什么来做key!(试过了,结果是超时)
[/Quote]
边长 相等、边斜率 平行 、对角线斜率 垂直 ……
pmars 2010-05-11
  • 打赏
  • 举报
回复
我用hash写了一下,按两个点的横纵坐标之和存的,但是效率不行啊!
我去二分下~~~~
pmars 2010-05-11
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 kenyyy 的回复:]
pku上应该有这个题的,当时好像是用的枚举两点然后2分找另外两点的
[/Quote]
应该就是N^2*logN了吧!
qq120848369 2010-05-11
  • 打赏
  • 举报
回复
学习一下.
zeroieme 2010-05-11
  • 打赏
  • 举报
回复
正方形在X或Y轴的投影对边长度相等。可以先以X轴数值找A-B=C-D的4点,再检验。
kenyyy 2010-05-11
  • 打赏
  • 举报
回复
pku上应该有这个题的,当时好像是用的枚举两点然后2分找另外两点的
LeonTown 2010-05-11
  • 打赏
  • 举报
回复
或许可以做一些优化,
比如从左上到右下的枚举正方形的上方两个点
michael122 2010-05-11
  • 打赏
  • 举报
回复
同ls,恐怕就只有平方的算法了
超级大笨狼 2010-05-11
  • 打赏
  • 举报
回复
C(n,2)个边,找到边复杂度是所有的边O(n×(n-1)/2)=o(n^2),
根据边算出另外两个点,查找是否存在hash,O(1)
总体复杂度是O(n^2)级别的。
绿色夹克衫 2010-05-10
  • 打赏
  • 举报
回复
枚举2个点的组合,一个正方形如果确定了2个点,那么另外两个点的位置只有3种情况,这时候可以用Hash来判断是否存在。不过这应该算是一个效率很低的方法,看看大家还有什么好方法吧。

[Quote=引用 7 楼 pmars 的回复:]

引用 5 楼 litaoye 的回复:
n^2的枚举算么?呵呵!

如何弄?
每个正方形有四个点,之后有n个点,或者说是,有4个边,但是只考虑其中的两个边即可,n个点,能够组成n*(n-1)/2个边。。。。。。
头脑混沌了。。。
[/Quote]
lz3771 2010-05-10
  • 打赏
  • 举报
回复
mark
pmars 2010-05-10
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 litaoye 的回复:]
n^2的枚举算么?呵呵!
[/Quote]
如何弄?
每个正方形有四个点,之后有n个点,或者说是,有4个边,但是只考虑其中的两个边即可,n个点,能够组成n*(n-1)/2个边。。。。。。
头脑混沌了。。。
十八道胡同 2010-05-10
  • 打赏
  • 举报
回复
N^2暴力枚举
绿色夹克衫 2010-05-10
  • 打赏
  • 举报
回复
n^2的枚举算么?呵呵!
pmars 2010-05-10
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 diablox0147 的回复:]
正方形还是四边形???
[/Quote]

的确,四边形好写,嘿嘿

大家感想一下,怎么搞定!!!
yuanlaifenglin 2010-05-10
  • 打赏
  • 举报
回复
四边形都不好想了 正方形。。
diablox0147 2010-05-10
  • 打赏
  • 举报
回复
正方形还是四边形???
dogfish001 2010-05-10
  • 打赏
  • 举报
回复
ding

33,025

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧