#include<stdio.h>
#include<math.h>
#include<stdlib.h>
#define eps 1e-8
#define zero(x) (((x)>0 ? (x):(-x))<eps)
#define INF 0x3f3f3f3f
struct Point
{
double x,y;
}tre,point[],tp;
struct Line
{
Point a,b;
}line[];
double xmult(Point p1,Point p2,Point p0)
{
return (p1.x-p0.x)*(p2.y-p0.y)-(p2.x-p0.x)*(p1.y-p0.y);
}
double dmult(Point p1,Point p2,Point p0)
{
return (p1.x-p0.x)*(p2.x-p0.x)+(p1.y-p0.y)*(p2.y-p0.y);
}
int dis(Point p1,Point p2)
{
return (p1.x-p2.x)*(p1.x-p2.x)+(p1.y-p2.y)*(p1.y-p2.y);
}
int cmp(const void *a,const void *b)
{
Point *c=(Point *)a;
Point *d=(Point *)b;
int k=xmult(point[],*c,*d);
if(k<||!k&&dis(point[],*c)>dis(point[],*d))
return ;
return -;
}
int main()
{
int i,j,n,ans,tmp;
scanf("%d",&n);
for(i=;i<n;i++)
{
scanf("%lf%lf%lf%lf",&line[i].a.x,&line[i].a.y,&line[i].b.x,&line[i].b.y);
point[*i]=line[i].a;
point[*i+]=line[i].b;
}
scanf("%lf%lf",&tre.x,&tre.y); int m=n;
point[m].x=point[m++].y=;
point[m].x=;point[m++].y=;
point[m].x=point[m++].y=;
point[m].x=;point[m++].y=; qsort(point+,m-,sizeof(Point),cmp);
point[m++]=point[]; ans=INF;
for(i=;i<m-;i++)
{
tmp=;
//tp.x=(point[i].x+point[i+1].x)/2;
//tp.y=(point[i].y+point[i+1].y)/2;
tp=point[i];
for(j=;j<n;j++)
{
if(xmult(tre,line[j].a,line[j].b)*xmult(tp,line[j].a,line[j].b)<-eps&&
xmult(line[j].a,tre,tp)*xmult(line[j].b,tre,tp)<-eps)tmp++;
}
if(tmp<ans)ans=tmp;
}
printf("Number of doors = %d\n",ans-);
return ;
}

poj 1066 Treasure Hunt (未完)的更多相关文章

  1. poj 1066 Treasure Hunt (Geometry + BFS)

    1066 -- Treasure Hunt 题意是,在一个金字塔中有一个宝藏,金字塔里面有很多的墙,要穿过墙壁才能进入到宝藏所在的地方.可是因为某些原因,只能在两个墙壁的交点连线的中点穿过墙壁.问最少 ...

  2. POJ 1066 Treasure Hunt(线段相交判断)

    Treasure Hunt Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 4797   Accepted: 1998 Des ...

  3. POJ 1066 Treasure Hunt(相交线段&amp;&amp;更改)

    Treasure Hunt 大意:在一个矩形区域内.有n条线段,线段的端点是在矩形边上的,有一个特殊点,问从这个点到矩形边的最少经过的线段条数最少的书目,穿越仅仅能在中点穿越. 思路:须要巧妙的转换一 ...

  4. POJ 1066 - Treasure Hunt - [枚举+判断线段相交]

    题目链接:http://poj.org/problem?id=1066 Time Limit: 1000MS Memory Limit: 10000K Description Archeologist ...

  5. poj 1066 Treasure Hunt

    http://poj.org/problem?id=1066 #include <cstdio> #include <cstring> #include <cmath&g ...

  6. POJ 1066 Treasure Hunt [想法题]

    题目链接: http://poj.org/problem?id=1066 --------------------------------------------------------------- ...

  7. POJ 1066 Treasure Hunt (线段相交)

    题意:给你一个100*100的正方形,再给你n条线(墙),保证线段一定在正方形内且端点在正方形边界(外墙),最后给你一个正方形内的点(保证不再墙上) 告诉你墙之间(包括外墙)围成了一些小房间,在小房间 ...

  8. POJ 1066 Treasure Hunt【线段相交】

    思路:枚举四边墙的门的中点,与终点连成一条线段,判断与其相交的线段的个数.最小的加一即为答案. 我是傻逼,一个数组越界调了两个小时. #include<stdio.h> #include& ...

  9. POJ 1066 Treasure Hunt --几何,线段相交

    题意: 正方形的房子,给一些墙,墙在区域内是封闭的,给你人的坐标,每穿过一道墙需要一把钥匙,问走出正方形需要多少把钥匙. 解法: 因为墙是封闭的,所以绕路也不会减少通过的墙的个数,还不如不绕路走直线, ...

随机推荐

  1. 笔记:LNK2001不代表链接器真的需要链接相关符号

    环境:VS2008   我们都知道,链接器在生成可执行程序时,会忽略那些没有用到的符号.但是昨天遇到一个链接问题,看起来与这条基本策略并不相符.首先看一个静态链接库的结构:   lib | |---- ...

  2. (转)Inno Setup入门(十)——操作注册表

    本文转载自:http://blog.csdn.net/yushanddddfenghailin/article/details/17250871 有些程序需要随系统启动,或者需要建立某些文件关联等问题 ...

  3. android图片优化

    /1.不要将Button的背景设置为selector 如果是将Button的背景设置为selector,在初始化Button的时候会将正反选图片都加载在内存中,相当于一个按钮占用了两张相同大小图片所使 ...

  4. Msys2+mingw-w64 编译VS2013使用的ffmpeg静态库注意事项

    1.环境准备 第一步:从http://sourceforge.net/projects/msys2/下载msys2的安装程序安装msys2; 第二步:通过msys2的包管理工具pacman安装ming ...

  5. buntu12.10 64位 + android-ndk-r9 编译ffmpeg遇到的问题

      android-ndk-r8d/build/core/build-binary.mk:41: *** target file `clean' has both : and :: entries.  ...

  6. HDU 2669 Romantic(裸的拓展欧几里得)

    Romantic Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Su ...

  7. Type-C潮流下 如何衡量一款数据线好坏?

    不少新一代手机开始支持Type-C接口,比如乐视.PPTV.努比亚Z11.小米4C和三星Note7等.和普通Micro USB相比,Type-C数据线因为正反插的关系对品质要求更高,不然随时有短路烧毁 ...

  8. Servlet的复习

    Servlet概述 在JavaWeb阶段,使用Servlet是很经常的是事情,Servlet作为MVC中控制器(C)的存在,是不可缺少的一部分.当然Servlet作为JavaWeb的三大组件之一(其他 ...

  9. 线程queue、线程进程池、异步回调机制

    1. 线程 queue queue is especially useful in threaded programming when information must be exchanged sa ...

  10. Log4j记录日志使用方法

    1.导入相关JAR包 log4j-1.2.15.jar slf4j-api-1.6.1.jar slf4j-log4j12-1.6.1.jar log4jdbc4-1.2.jar 2.配置log4j. ...