跳转至

星际订单:矩形相交

预估时间限制:0.5 秒。内存限制:128 MB。

实际时限以标准程序在目标评测环境的最慢用例中位时间乘以 \(2\) ,按 \(0.5\) 秒向上取整。参考环境见评测说明。

背景故事

星际计算中心完成运动计算订单后,又收到了制作几何练习的任务。练习中的两个矩形有时会压扁成线段,甚至缩成一个点,需要判断它们是否仍有公共部分。

形式化问题描述

在平面直角坐标系中,给定两个闭矩形 \(A,B\) . 各边平行于坐标轴,每个矩形由一条对角线的两个端点确定,端点顺序任意。

矩形包含内部及边界。两个端点的某一维坐标相同时,矩形可以退化为线段;两维坐标都相同时退化为点。

判断 \(A\cap B\) 是否非空。只有一个公共点也算相交。

矩形、内部线段、交叉线段和分离图形的相交示例

实线表示 \(A\) ,虚线表示 \(B\) . 前三组相交,第四组不相交;第二组中的线段完全位于矩形内部。

输入格式

第一行一个整数 \(T\) . 接下来 \(T\) 行,每行八个整数

x1 y1 x2 y2 x3 y3 x4 y4

前四个数是 \(A\) 的两个对角端点,后四个数是 \(B\) 的两个对角端点。

输出格式

每组输出一行:相交时输出 Intersection Found ,否则输出 Intersection Not Found . 字符串的大小写和空格必须一致。\(T=0\) 时输出为空。

样例

样例 1

输入

13
0 0 1 1 2 2 3 3
-1 2 2 -1 0 0 1 1
0 0 0 0 0 0 0 0
0 1 0 5 0 2 0 3
0 0 5 5 2 -5 3 0
0 0 5 0 2 -1 2 2
0 0 2 2 -1 -1 1 1
0 0 0 0 5 0 -1 0
-1 -1 -5 -5 -5 0 -5 -2
-1 -1 -5 -5 -2 -1 -2 -2
-2 1 2 -1 1 2 -1 -2
0 0 2 2 0 1 -1 1
0 0 0 0 1 1 1 1

输出

Intersection Not Found
Intersection Found
Intersection Found
Intersection Found
Intersection Found
Intersection Found
Intersection Found
Intersection Found
Intersection Found
Intersection Found
Intersection Found
Intersection Found
Intersection Not Found

样例 2

输入

4
0 0 4 4 2 1 2 3
0 2 4 2 2 0 2 4
1 1 1 1 2 2 2 2
-1000000000 -1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000

输出

Intersection Found
Intersection Found
Intersection Not Found
Intersection Found

样例 3

输入

0

输出


样例解释

样例 1 包含不相交、包含、点重合、线段重合与边界接触。样例 2 的第一组是矩形包含线段,第二组是两条线段交于一点;它们都算相交。第四组在坐标上界处共用一个点。

数据范围与保证

对 100% 的数据:\(0\le T\le1000\) ,\(|x_i|,|y_i|\le10^9\) ,其中 \(1\le i\le4\) . 允许退化以及任意顺序的对角端点。

分值比例 额外条件
100% 无额外条件