Poj 2284 Hoj 1890 That Nice Euler Circuit(二)
n;
int V = 0;
for(int i=1;i
{
for(int j=i+1;j<=n;j++)
{
intersect(e[i].a,e[i].b,e[j].a,e[j].b);
}
}
sort(p,p + p_num,cmp);
p_num = unique(p,p+p_num,cmp2) - p;
V = p_num;
for(int i=0;i
{
for(int j=1;j<=n;j++)
{
//判断顶点是否在线段上
if( dcmp(det(e[j].a,e[j].b,p[i])) == 0 && dcmp(dot(e[j].a,e[j].b,p[i]))<0 )
{
E++;
}
}
}
printf("Case %d: There are %d pieces.\n",num,2+E-V);
}
return 0;
}