2011年3月3日
摘要: /*判断点是否在线段上: 设点为Q,线段为P1P2 ,判断点Q在该线段上的依据是:( Q - P1 ) × ( P2 - P1 ) = 0 且 Q 在以 P1,P2为对角顶点的矩形内。前者保证Q点在直线P1P2上,后者是保证Q点不在线段P1P2的延长线或反向延长线上,对于这一步骤的判断可以用以下过程实现: ON-SEGMENT(pi,pj,pk) if min(xi,xj) <= xk <= max(xi,xj) and min(yi,yj) <= yk <= max(yi,yj) then return true; else return false; 特别 阅读全文
posted @ 2011-03-03 19:26 翱翔九天 阅读(8049) 评论(1) 推荐(0) 编辑
  2011年3月2日
摘要: 几何题做的很少,以至于一个很简单的题目写了很久若是判断直线和线段是否有交点,把on_segment去掉就可以了 判断两线段是否相交: 我们分两步确定两条线段是否相交: (1)快速排斥试验 设以线段 P1P2 为对角线的矩形为R, 设以线段 Q1Q2 为对角线的矩形为T,如果R和T不相交,显然两线段不会相交。 (2)跨立试验 如果两线段相交,则两线段必然相互跨立对方。若P1P2跨立Q1Q2 ,则矢量 ( P1 - Q1 ) 和( P2 - Q1 )位于矢量( Q2 - Q1 ) 的两侧,即( P1 - Q1 ) × ( Q2 - Q1 ) * ( P2 - Q1 ) × ( 阅读全文
posted @ 2011-03-02 22:20 翱翔九天 阅读(1535) 评论(0) 推荐(0) 编辑
  2011年1月20日
摘要: 正在学(learning),未学(waiting),已学(cut vovering)初期: 一.基本算法: (1)枚举. (poj1753{bfs+位二进制} ,poj2965{bfs 或者一种很巧妙的解法} ) (2)贪心(poj1328,poj2109,poj2586) (3)递归和分治法. (4)递推. (5)构造法.(poj3295) (6)模拟法.(poj1068,poj2632,poj1573,poj2993,poj2996) 二.图算法: (1)图的深度优先遍历和广度优先遍历. (2)最短路径算法(dijkstra,bellman-ford,floyd,heap+ 阅读全文
posted @ 2011-01-20 13:38 翱翔九天 阅读(473) 评论(1) 推荐(1) 编辑
  2011年1月18日
摘要: http://poj.org/problem?id=2771一个保守的老师带学生出去玩,他希望任何一人不能配成一对,问你K个人中他能带出去的最大人数最大独立集= 顶点数(总人数) - 最大匹配数因为最小点覆盖集==最大匹配数最小点覆盖集: 假如选了一个点就相当于覆盖了以它为端点的所有边,你需要选择最少的点来覆盖所有的边。因此最大独立集 = 顶点数 - 最小点覆盖集http://www.matrix67.com/blog/archives/116证明由matrix67给出代码(⊙o⊙) 阅读全文
posted @ 2011-01-18 16:17 翱翔九天 阅读(251) 评论(0) 推荐(0) 编辑
摘要: http://acm.hdu.edu.cn/showproblem.php?pid=2063做的第一个二分图匹配的题目。下面是一些基本知识:二分图的基本概念一个无向图G=V, E,如果存在两个集合X、Y,使得X∪Y=V, X∩Y=Φ,并且每一条边e={x,y}有x∈X,y∈Y,则称G为一个二分图(bipartite graph)。常用X, E, Y来表示一个二分图。若对X中任一x及Y中任一y恰有一边e∈E,使e = {x, y}, 则称G为完全二分图(complete bipartite graph)。当|X| = m,|Y| = n时,完全二分图G记为Km,n。 二分图的性质:定理: 阅读全文
posted @ 2011-01-18 14:18 翱翔九天 阅读(2100) 评论(1) 推荐(0) 编辑
  2010年12月4日
摘要: 终于把校赛最后一题过了,二分的地方写的很差,以后注意改进。思路就是从前向后求LIS最长递增子序列,以a[i]为底LIS值记录在dp1[i],然后从后向前求LDS最长递减子序列,以a[i]为底LDS值记录在dp2[i]则如果 dp1[i] + dp2[i]== dp[n]+1( 即最长长度加1 ),则说明a[i]是最长中的某个数,如果这些符合的dp1[i]值只出现一次,则其为Key Number题目... 阅读全文
posted @ 2010-12-04 08:18 翱翔九天 阅读(303) 评论(0) 推荐(0) 编辑