#include<stdio.h>
using namespace std;const double eps = 1e-10;
struct Node
{double x, y;
};bool lineInSide( Node A, Node B, Node C, Node D) {// A(x1, y1), B(x2, y2)的直线方程为:// f(x, y) =  (y - y1) * (x1 - x2) - (x - x1) * (y1 - y2) = 0double fC = (C.y - A.y) * (A.x - B.x) - (C.x - A.x) * (A.y - B.y);double fD = (D.y - A.y) * (A.x - B.x) - (D.x - A.x) * (A.y - B.y);if(fC * fD > 0)return false;return true;
}//判断线段AB和线段CD是否相交
bool sideInSide( Node A, Node B, Node C, Node D) {if(!lineInSide(A, B, C, D))return false;if(!lineInSide(C, D, A, B))return false;return true;
}
int main(){
//  freopen("in.txt","r",stdin);int t;scanf("%d",&t);while(t--){Node s1,e1,s2,e2;scanf("%lf%lf%lf%lf%lf%lf%lf%lf",&s1.x,&s1.y,&e1.x,&e1.y,&s2.x,&s2.y,&e2.x,&e2.y);bool flag=sideInSide(s1, e1, s2, e2);if(flag)printf("Interseetion\n");else printf("Not Interseetion\n");      }   return 0;
}
#include<stdio.h>
using namespace std;const double eps = 1e-10;struct point
{double x, y;
};
double min(double a, double b)
{return a < b ? a : b;
}
double max(double a, double b)
{return a > b ? a : b;
}
//判断线段ab 和线段cd相交
bool inter(point a, point b, point c, point d)
{if (min(a.x, b.x) > max(c.x, d.x) || min(a.y, b.y) > max(c.y, d.y) || min(c.x, d.x) > max(a.x, b.x) ||min(c.y, d.y) > max(a.y, b.y)){return 0;}double h, i, j, k;h = (b.x - a.x) * (c.y - a.y) - (b.y - a.y) * (c.x - a.x);i = (b.x - a.x) * (d.y - a.y) - (b.y - a.y) * (d.x - a.x);j = (d.x - c.x) * (a.y - c.y) - (d.y - c.y) * (a.x - c.x);k = (d.x - c.x) * (b.y - c.y) - (d.y - c.y) * (b.x - c.x);return h * i <= eps && j * k <= eps;
}int main(){int t;//freopen("in.txt","r",stdin);scanf("%d",&t);while(t--){point st,ed,st1,ed1;scanf("%lf%lf%lf%lf%lf%lf%lf%lf",&st.x,&st.y,&ed.x,&ed.y,&st1.x,&st1.y,&ed1.x,&ed1.y);int flag=inter(st, ed, st1, ed1);if(flag)printf("Interseetion\n");else printf("Not Interseetion\n");      }   return 0;
}

xynu 2139: 德莱联盟(判断线段是否相交 )相关推荐

  1. 德莱联盟[判断线段相交]

    德莱联盟 时间限制:1000 ms  |  内存限制:65535 KB 难度:1 描述 欢迎来到德莱联盟.... 德莱文... 德莱文在逃跑,卡兹克在追.... 我们知道德莱文的起点和终点坐标,我们也 ...

  2. 德莱联盟 计算几何 线段相交

    难度:1 描述 欢迎来到德莱联盟.... 德莱文... 德莱文在逃跑,卡兹克在追.... 我们知道德莱文的起点和终点坐标,我们也知道卡兹克的起点和 终点坐标,问:卡兹克有可能和德莱文相遇吗?,并且保证 ...

  3. NYOJ 1016 德莱联盟(计算几何 线段相交判定)

    判断两条线段是否相交. 在判断两条线段是否相交时,我们常用快速排斥实验跟跨立实验这两种方法,快速排斥实验能很快的排除掉线段不相交的情况,但并没法成为线段相交的充要条件,在快速排斥实验之后接上跨立实验就 ...

  4. XYNUOJ-2139 德莱联盟

    2139: 德莱联盟 时间限制: 1 Sec  内存限制: 64 MB 提交: 7  解决: 3 您该题的状态:已完成 [提交][状态][讨论版] 题目描述 欢迎来到德莱联盟.... 德莱文... 德 ...

  5. 德莱联盟(判断线段是否相交)

    德莱联盟 时间限制:1000 ms  |  内存限制:65535 KB 难度:1 描述 欢迎来到德莱联盟.... 德莱文... 德莱文在逃跑,卡兹克在追.... 我们知道德莱文的起点和终点坐标,我们也 ...

  6. NYOJ1016(德莱联盟)(判断线段相交)

    德莱联盟 时间限制:1000 ms  |  内存限制:65535 KB 难度:1 描述 欢迎来到德莱联盟.... 德莱文... 德莱文在逃跑,卡兹克在追.... 我们知道德莱文的起点和终点坐标,我们也 ...

  7. 德莱联盟(判断两个线段是否相交)

    德莱联盟 时间限制:1000 ms  |  内存限制:65535 KB 难度:1 描述 欢迎来到德莱联盟.... 德莱文... 德莱文在逃跑,卡兹克在追.... 我们知道德莱文的起点和终点坐标,我们也 ...

  8. nyoj1016德莱联盟【判断两线段是否相交】

    德莱联盟 时间限制:1000ms  |  内存限制:65535KB 难度:1 描述 欢迎来到德莱联盟.... 德莱文... 德莱文在逃跑,卡兹克在追.... 我们知道德莱文的起点和终点坐标,我们也知道 ...

  9. 德莱联盟(判断两点是否相交 nyist)

    描述 欢迎来到德莱联盟.... 德莱文... 德莱文在逃跑,卡兹克在追.... 我们知道德莱文的起点和终点坐标,我们也知道卡兹克的起点和中点坐标,问:卡兹克有可能和德莱文相遇吗?,并且保证他们走的都是 ...

最新文章

  1. “科创30条”鼓励高校开设AI新兴学科
  2. XP 安装Oralce 10g 数据库
  3. 牛客练习赛46 A 华华教奕奕写几何 (简单数学)
  4. 用Matlab来备份文件夹
  5. java ssm框架 缓存_SSM框架之Mybatis(7)延迟加载、缓存及注解
  6. 《设计模式系列》---克隆模式
  7. eclipse中复制导入的项目并且修改了项目名字,项目后面的括号显示原来项目的名字
  8. js中数组的操作方法
  9. Ajax 浏览器跨域访问控制
  10. UVA10625 GNU = GNU'sNotUnix【字符统计】
  11. Selenium WebDriver控制操作(Python)
  12. 炒股杠杆-API智能交易软件基本函数
  13. 30个最常见oCPC问题
  14. 黑苹果音频卡顿_手机耗电大、卡顿怎么办?只需关掉这个按键轻松解决,去试试...
  15. 【目标检测】YOLOv5-PyQT可视化例程开发
  16. SUMO无法创建xml文件 Could not build output file
  17. ansible模块管理与主机清单配置
  18. 新学:DES加密 小知识点(S盒,初始置换)
  19. 基于Android Studio实现的学生蹭课APP
  20. 【天池龙珠计划】Python训练营 Task04 Python数据分析:从0完成一个数据分析实战

热门文章

  1. 《炬丰科技-半导体工艺》石英深反应离子刻蚀特性研究
  2. 弘辽科技:拼多多店铺层级会掉吗?怎么划分?
  3. c语言中的三角函数公式,高中三角函数公式大全-必背基础知识点.doc
  4. wxpython 优秀的界面_WxPython实现无边框界面
  5. html语言开关控制灯泡,用js控制电灯开关
  6. 手动安装shipyard
  7. 更新pip后出现WARNING:pip is being invoked by an old script wrapper
  8. Time-Evolving Graph Convolutional Recurrent Network for Traffic Prediction论文笔记
  9. Python快速上手攻略
  10. 如果应用闪退,怎么获取相关日志?