poj 1269 Intersecting Lines

原创 2012年03月21日 17:00:59

题意:若两直线平行,输出NONE

           两直线相交输出交点

          两直线为同一直线,输出LINE

#include <stdio.h>
#define INF 0xfffffff
struct Point
{
	int x,y;
};
Point list[5];

int main(int argc, char *argv[])
{
	int T,i;
	float k12,k13,k34,k14;
	float X,Y;
	scanf("%d",&T);
	printf("INTERSECTING LINES OUTPUT\n");
	while(T--)
	{
	   scanf("%d%d%d%d%d%d%d%d",&list[1].x,&list[1].y,&list[2].x,&list[2].y,
	                            &list[3].x,&list[3].y,&list[4].x,&list[4].y);
	   //求斜率 
	   if(list[1].x==list[2].x)   k12=INF;							
         else  k12=(float)(list[1].y-list[2].y)/(float)(list[1].x-list[2].x);
       if(list[1].x==list[3].x)   k13=INF;
	     else k13=(float)(list[1].y-list[3].y)/(float)(list[1].x-list[3].x);
	   if(list[3].x==list[4].x)   k34=INF;
	     else k34=(float)(list[3].y-list[4].y)/(float)(list[3].x-list[4].x);
	   if(list[1].x==list[4].x)   k14=INF;
	     else k14=(float)(list[4].y-list[1].y)/(float)(list[4].x-list[1].x);
	   //当第一点和第三点和第四点所形成的斜率相同则为同一直线  
	   if(k12==k13 && k12==k14) printf("LINE\n");
	   else if(k12==k34)  printf("NONE\n");
	   else 
	   {//加入有一条直线斜率是不存在的 
	   	  if(k12==INF)
	   	  {
  	   		 X=list[1].x;
  	   		 Y=k34*X+list[3].y-k34*list[3].x;
  	   	  }
  	   	  else
	      {
		     X=(float)(list[1].y-list[3].y-k12*list[1].x+k34*list[3].x)/(float)(k34-k12);
	         Y=k12*X+list[1].y-k12*list[1].x;
	      }
		  printf("POINT %.2f %.2f\n",X,Y);			
	   }
	   if(!T) printf("END OF OUTPUT\n");
	}
	return 0;
}


 

判断两条直线 共线或 平行 或相交 求交点 叉乘的应用 poj 1269 Intersecting Lines

题目来源:http://poj.org/problem?id=1269 分析: 题目大意:给两个点能够确定一条直线,题目给出两条直线(由4个点确定),要求判断出这两条直线的关系:平行,同线,相交。...

POJ 1269 || Intersecting Lines(直线重合,平行,相交判定

poj 不能用%lf输出,被坑了五六七八WA,从70多行的代码改到一百多行,发现卧槽原来是这个wa点,无法吐槽自己。 没用模板,自己从头文件开始狂敲。 等下去学一个模板好像非常简单粗暴。 ...
  • FXXKI
  • FXXKI
  • 2015年03月26日 20:10
  • 422

POJ 1269 Intersecting Lines(判断两条线段关系)

Intersecting Lines Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 1357...

POJ 1269 Intersecting Lines 简单计算几何

题目的链接如下:http://poj.org/problem?id=1269 Intersecting Lines Time Limit: 1000MS Memory Limit: 10...

计算几何入门1--poj1269Intersecting Lines

题目大意:给你一坨直线,求他们之间的关系计算几何入门好题,我用斜率写的,神烦#include #include #include #include #include #include #include...

POJ 1269 Intersecting Lines(两直线间关系判定)

POJ 1269 Intersecting Lines(两直线间关系判定) http://poj.org/problem?id=1269 题意: (ZOJ1280)        给你两条直...

POJ1269-Intersecting Lines(判断两条直线平行、重合或者相交)

Intersecting Lines Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 8789...

POJ 1269 Intersecting Lines(计算几何)

D - Intersecting Lines Time Limit:1000MS     Memory Limit:10000KB     64bit IO Format:%I64d & %I6...
  • s1124yy
  • s1124yy
  • 2016年05月23日 12:07
  • 176

POJ 1269 Intersecting Lines (两直线之间的位置关系)

题意:判断两直线之间的位置关系,平行,重合,相交 题解:注意精度 #include #include using namespace std; #define MAX 100 #d...
  • Tsaid
  • Tsaid
  • 2011年11月06日 16:45
  • 307

POJ 1269 Intersecting Lines(判断两条直线的位置关系)

Description We all know that a pair of distinct points on a plane defines a line and that a pair of...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:poj 1269 Intersecting Lines
举报原因:
原因补充:

(最多只允许输入30个字)