- 博客(13)
- 资源 (14)
- 收藏
- 关注
原创 poj 3348 Cows
可做求凸包面积的模板 #include #include #include #include using namespace std; struct Point { int x; int y; }; int N, d; // 顶点数 Point shape[1000]; // 记录多边形各个顶点 Point bulgeShape[1001]; //
2012-10-11 17:13:41 211
原创 poj 3304 Segments
此题求解的是是否有一条直线可以穿过所有的线段,线段的断点可以刚好在这条直线上。 方法就是枚举不在同一线段上的两端点所在的直线,然后与所有的线段求叉乘。 #include #include #include #define MAX 105 #define INF 99999999999999 struct node1 { double k; double b; }
2012-10-11 17:03:50 185
原创 poj 2318 TOYS
水题 #include #include #include using namespace std; struct node { double k; double b; }par[5005]; int num[5005]; int n,m; double x1=0,x2=0,y1=0,y2=0; int search(int begin,int end,double x,doub
2012-10-11 17:00:03 194
原创 poj 1654 Area
水题…… #include #include #include #include using namespace std; void getxy(int &x,int &y,char m) { switch(m) { case '1': x--; y--; break; case '2': y--; break; case '3': x++;
2012-10-11 16:55:48 176
原创 poj 1556 The Doors
这道题失球最短路径,结合了计算几何与图论的知识 #include #include #include struct point { double x,y; }p[200]; struct segment { point a,b; }s[200]; double g[200][200]; int t; //计算oa和ob的叉积 double cross(point a, po
2012-10-11 16:54:05 192
原创 poj 1410 Intersection
题意是要判断线段与矩形是否有交点,要注意线段可能在矩形内部,但与矩形的边没交点的情况 #include #include #include using namespace std; #define precision 1e-6 struct point { double x; double y; }; double min(double a,double b) { return
2012-10-11 16:50:26 224
原创 poj 1269 Intersecting Lines
这道题很水,但要注意不存在时的情况,还有精度问题 #include #include #include using namespace std; const double eps=1e-8; const double ep=1e-15; int main() { // freopen("test.txt","r",stdin); double x1,y1,x2,y2,x3,y
2012-10-11 16:44:51 165
原创 poj 1265 Area
题意大致是求凸包边上的点的个数以及凸包里面的点的个数,还有凸包的面积 解题思路: 面积=内部点数+边上点数/2-1 边上的点数等于这条边的x差值和y差值的最大公约数+1 #include #include using namespace std; //求a,b的最大公约数 int gcd(int a,int b) { if(a<0)a=-a; if(b<0)b=-b;
2012-10-11 16:39:57 167
原创 poj 1113 Wall
大致题意:给定多边形城堡的n个顶点,绕城堡外面建一个围墙,围住所有点,并且墙与所有点的距离至少为L,求这个墙最小的长度。 解题思路:者很明显是一个凸包问题,围墙的长度=整个凸包的长度+pi*2*L #include #include #include #include using namespace std; struct Point { int x; int
2012-10-11 16:32:30 174
原创 hdu 1568 Fibonacci
题意是求Fibonacci数列的前四位数 解题思路:标准的Fibonacci数列F(0) = 0, F(1) = 1, F(n) = F(n-1) + F(n - 2)。 通项公式为F(n) = (((1+Sqrt(5))/2)^n - ((1-Sqrt(5))/2)^n)*1/Sqrt(5), 因为(1-sqrt(5))/2的绝对值小于1,所以当i较大的时候,往往可以忽略掉这一项F(n)≈
2012-10-11 16:22:03 195
原创 hdu 1466 计算直线的交点数
/* 平面上有n条直线,且无三线共点,问这些直线能有多少种不同交点数。 比如,如果n=2,则可能的交点数量为0(平行)或者1(不平行)。 Input 输入数据包含多个测试实例,每个测试实例占一行,每行包含一个正整数n(n<=20),n表示直线的数量. Output 每个测试实例对应一行输出,从小到大列出所有相交方案,其中每个数为可能的交点数,每行的整数之间用一个空格隔开。 Sam
2012-10-10 19:27:32 296
原创 hdu 1147 Pick-up sticks
题意是在一个平面上按顺序摆上放一些棍子,求最后哪些棍子在最上面(此题只需考虑规范相交的情况) 用一个链表储存每放一根棍子后摆在最上面的棍子,每放一根棍子就判断一下是否跟前面的棍子规相交, 若相交,则将前面的那条棍子删除 #include #include #include #include #include using namespace std; #define precision 1e-
2012-10-10 19:20:44 357
原创 hdu 2528 Area
电子科大清水河校区是电子科大大力兴建的未来主校区,于07年秋正式迎接学生入住,目前有07、08级本科生及部分研究生在此校区学习、生活。 清水河校区位于成都高新西区的中部地带,占地约3128亩。从空中看,新校区的整体像一个长方形,南北长,东西窄。一条水渠从西北角的顶点注入,笔直的延伸到南面围墙的大概三分之一分点的地方,由此流出学校。位于这条水渠和西墙之间的是研究院,最南面的是学术交流中心和接待中心
2012-10-10 16:56:03 705
C++电子教案
2013-03-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人