#P3699. [CQOI2017] 小Q的草稿
[CQOI2017] 小Q的草稿
题目描述
Q 是个程序员。
众所周知,程序员在写程序的时候经常需要草稿纸。小 Q 现在需要一张草稿纸用来画图,但是桌上只有一张草稿纸,而且是一张被用过很多次的草稿纸。
草稿纸可以看作一个二维平面,小 Q 甚至已经给它建立了直角坐标系。以前每一次草稿使用过的区域,都可以近似的看作一个平面上的一个三角形,这个三角形区域的内部和边界都不能再使用。当然了,以前的草稿也没有出现区域重叠的情况。
小 Q 已经在草稿纸上画上了一些关键点,这些关键点都在没使用过的区域。小 Q 想把这些关键点两两之间尽可能的用线段连接起来。连接两个关键点的线段有可能会穿过已经用过的草稿区域,这样显然不允许。于是小 Q 就想知道,有多少对关键点可以被线段连接起来,而且还不会穿过已经用过的区域。为了方便,小 Q 保证任意三个关键点不会共线。
输入格式
第一行包含两个整数V, T,表示草稿纸上的关键点数量和三角形区域数量。
接下来V行,每行两个整数x, y,表示一个关键点的坐标 (x,y) 。
接下来T行,每行六个整数,表示一个三角形区域的三个顶点坐标分别是 ,保证三角形的面积大于0。
输出格式
输出一行,一个整数,表示能够被线段连接起来的关键点有多少对。
3 0
0 0
2 0
2 2
3
3 1
0 0
2 0
2 2
1 0 1 1 2 1
0
提示
【输入输出样例 1 说明】
整个草稿纸是全新的,任意两个关键点都可以连线。
【输入输出样例 2 说明】
如图所示,任意两个关键点的连线都被挡住了。
【数据规模与约定】
对于 100%的测试点,0 ≤ 所有坐标 ≤ ,且都是整数。
NO 1 2 3 4 5 6 7 8 9 10
V 10 20 50 100 200 400 600 1000 1000 1000
T 10 20 50 100 200 400 600 1000 1000 1000