2011年12月3日

poj2002 poj3432 正方形个数 (hash,二分)

摘要: 给出一堆点,求其中正方形的个数。题目很简单,如果枚举,复杂度为O(n^4),肯定超时,我们利用hash,或者二分来降低复杂度,枚举其中的两个点,然后利用正方形的性质求出其余的两个点,然后判断这两个点是否都存在,如果存在,说明可以组成一个正方形。判断的方式利用hash或者二分都可以,这个题目用的hash,poj3432用的二分。下面的问题就是给出两个点,如何求出其余的两个顶点。给出两个点(a1,a2),(b1,b2),我们得到其余两个顶点为(a1+(b2-a2),a2-(b1-a1)),(b1+(b2-a2),b2-(b1-a1)),或者(a1-(b2-a2), a2+(b1-a1)),( b1 阅读全文

posted @ 2011-12-03 16:58 buptLizer 阅读(1088) 评论(0) 推荐(0) 编辑

导航