2013年3月17日

c语言 判断两直线段是否相交

摘要: 转了多人的放到一起比较!!//功能:求点在有向直线左边还是右边 //返回:0共线、1左边、-1右边 int left_right(point a,point b,double x,double y) { double t; a.x -= x; b.x -= x; a.y -= y; b.y -= y; t = a.x*b.y-a.y*b.x; return t==0 ? 0 : t>0?1:-1; } //功能:线段c,d和直线a,b是否相交 bool intersect1(point a,point b,point c,point d) { return left_right(a,b, 阅读全文

posted @ 2013-03-17 21:09 圣手摘星 阅读(4079) 评论(0) 推荐(0) 编辑

跳格子 DFS 加 奇偶截枝

摘要: Description今天小云和小塘玩起了跳格子的游戏,小云对小塘说:我在地上给你画一些格子,格子里面会出现下面的这些符号‘S’ 表示你要从这个格子开始‘X’ 表示这个格子不能跳‘.’ 表示这个格子可以跳‘D’ 表示跳到这个格子就结束了然后我告诉你要跳的步数,每跳一格算一步,只能上下左右四个方向跳,跳过的格子将会马上变成‘X’,你能恰好跳到终点吗?Input输入包含多组测试数据,每组测试数据的第一行有三个数N,M,S(1<N,M<7;0<S<50),分别表示格子的行数、列数和走的步数。当N,M,S均为0时表示输入结束。Output如果能刚跳走到终点,输出YES,不能则输 阅读全文

posted @ 2013-03-17 19:49 圣手摘星 阅读(302) 评论(0) 推荐(0) 编辑

导航