#include #include #include #define inf 99999999 using namespace std; struct point{ int x,y; }a[1000],b[1000];//存储坐标 int map[1000][1000]; int rightorleft(point a,point b,point c)//判断点在哪里 { int temp=(a.y-b.y)*c.x+(b.x-a.x)*c.y+a.x*b.y-b.x*a.y; return temp;//小于零在右边 大于零在左边 等于零共线 } int check(point a,point bi,point bj) { if(a.x>bi.x&&a.x>bj.x) return 1; if(a.xbi.y&&a.y>bj.y) return 1; if(a.y0)||(rightorleft(b[i],b[j],a[k])==0&&check(a[k],b[i],b[j])))//说明点在左下,f置零 { flag=0; break; } } if(flag)//f为1,则点均在右边 map[i][j]=1; } } for(i=0;im) printf("ToT\n"); else printf("%d\n",m-ans); } return 0; }