POJ
DeathYmz
划水摸鱼要不得!!!
不上紫名不改简介=_=(改了改了 打leetcode周赛去了 codeforces太晚了养身要紧)
展开
-
Transportation poj 1040
题意:给出列车容量,和有多少站,以及订单数。订单数包括起始站终点站和乘客人数,求最大的列车利润。 解题思路:按照起始站和终点站排列后,进行dfs+回溯。 Transportation poj 1040#include<iostream>#include<cstdio>#include<algorithm>#include<cstring&g...原创 2018-02-09 12:05:21 · 304 阅读 · 0 评论 -
Pipe POJ - 1039(线段相交+计算几何+暴力)
Pipe POJ - 1039 分类:线段相交+计算几何+暴力 题意:给你管道上方的折点(下方为上方y-1),问光线最远能达到的横轴位置. 思路:判断线段相交方式,枚举上下端点,判断与管道的折点处垂线的关系,相交说明还在管道内。可行。#include<iostream>#include<cstdio>#include<algorithm>#inc...原创 2018-08-23 14:47:36 · 547 阅读 · 0 评论 -
Segments POJ - 3304
Segments POJ - 3304 题意:给出n个线段,问是否有一条直线,可以使所有线段投影在这上面并交一点。 思路:并不是很会看了题解这个问题可以转化为是否存在一条直线和每个线段都有交点。 接下来,枚举每两个线段,两个线段可能组成的四条直线,注意重点。在利用叉积的性质,判断其他所有线段是否都和这条直线有交点 判断线段与直线l是否相交的方法: 1:利用叉积的性质,判断线段的两个端...原创 2018-08-20 19:11:47 · 260 阅读 · 0 评论 -
Intersecting Lines POJ - 1269
The Doors POJ - 1556 题意:给出两条直线上的两点求两直线的交点。 思路: 一般方程法: 直线的一般方程为F(x) = ax + by + c = 0。既然我们已经知道直线的两个点,假设为(x0,y0), (x1, y1),那么可以得到a = y0 – y1, b = x1 – x0, c = x0y1 – x1y0。 因此我们可以将两条直线分别表示为 F0(x...原创 2018-08-20 19:15:59 · 196 阅读 · 0 评论 -
Line of Sight POJ - 2074(思维+数学)
Line of Sight POJ - 2074 分类:思维+数学题 题意:给出房子的位置和参考线的位置,接下来给一系列障碍物的位置,问在参考系上能看到完整房屋的最长连续长度为多少。 思路:反向思维, 1、每输入一个障碍物的位置,首先判断是不是合法障碍物(合法的是在,房子和参考系中间。在房子之上或平行,或者参考系之下平行,都不会影响视线) 2、计算他在x轴的视觉盲区,存下来。注意:s,e...原创 2018-08-23 17:03:31 · 416 阅读 · 1 评论 -
The Doors POJ - 1556
The Doors POJ - 1556 分类:计算几何+判断线段交叉+最短路 题外话:痛苦的领悟,找bug半天,发现是自己定义两个名称一样的变量,导致后面的错了,maye,找了一个小时。多次事实告诉我,不要定义两个重名的 思路:保存点的信息,墙信息,给两两个点之间符合条件(不与线段(墙)交叉)建立边,最短路直接Floyd找答案。//没两点建立边,跑最短路。#include<i...原创 2018-08-21 00:32:23 · 367 阅读 · 0 评论 -
Pick-up sticks POJ - 2653
Pick-up sticks POJ - 2653 分类:计算几何+线段相交** 题目: Stan has n sticks of various length. He throws them one at a time on the floor in a random way. After finishing throwing, Stan tries to find the top sti...原创 2018-08-21 12:18:50 · 239 阅读 · 0 评论 -
Treasure Hunt POJ - 1066
Treasure Hunt POJ - 1066 分类:计算几何+线段相交题目: Archeologists from the Antiquities and Curios Museum (ACM) have flown to Egypt to examine the great pyramid of Key-Ops. Using state-of-the-art technology ...原创 2018-08-21 12:26:29 · 394 阅读 · 0 评论 -
Intersection POJ - 1410
Intersection POJ - 1410 分类:计算几何+线段相交 题目: You are to write a program that has to decide whether a given line segment intersects a given rectangle. An example: line: start point: (4,9) end poi...原创 2018-08-21 12:39:27 · 319 阅读 · 0 评论 -
Space Ant POJ - 1696(计算几何+极角排序)
Space Ant POJ - 1696 分类:极角排序+计算几何 题意:给出坐标点,经历所有点,(不能走重复的路,只能向左选择走)。 思路:刚看了Graham_Scan算法,照着模板用在这上面写了一遍,嗯错了。这个是求凸包的顶点序列,用在这题是不怎么合适。后看了别人题解,使用极角排序。 关于求极角利用的是叉积的性质。 关于第一个点的选区是最下方的点,直接把这个算作开始的点。 排序,根...原创 2018-08-21 15:39:30 · 301 阅读 · 0 评论 -
Cows poj 3348 (凸包+多边形面积)
Cows poj 3348 分类:凸包+多边形面积 题意:给出点的位置,求最大面积。答案除以50(emmm我求出最大面积然后和答案一直不一样,后来发现。。。忘记除以50了) 思路:运用了Graham_Scan 算法和求多边形面积公式。 AC代码://例题;Graham算法#include<iostream>#include<cstdio>#include...原创 2018-08-21 22:37:19 · 373 阅读 · 0 评论 -
Geometric Shapes POJ - 3449(计算几何+线段相交+细心)
Geometric Shapes POJ - 3449 分类:细心+线段相交 题外话:一个tot写成了0,找了一上午bug,我粗心的想打死自己,哭了都要,题真的不难!但是就是代码有点长!一定要细心,重复的不要复制粘贴之后就不改,简直要命。 题意:给你一堆图形的坐标(直线,三角形,正方形,矩形,多边形),问他们之间的相交情况。 思路: 1、处理存储的问题,将不同形状的点按顺序存起来,三角...原创 2018-08-23 14:16:57 · 474 阅读 · 0 评论 -
An Easy Problem?! POJ - 2826 (计算几何+线段相交+精度)
An Easy Problem?! POJ - 2826 分类:计算几何+精度判断+线段相交+交点 题外话:写了半天才过了,虽然思路想起来很简单,但是超多的精度判断,还有好多细节,还有我又一次在输出:%lf和%f上面WA几次。后来参考别人的博客,有几个博客说AC代码,但是提交时WA,可能是后来题目的测试数据又变了一些把。 题目:给你两个线段,问可以存储的水量最多为多少。 思路: 判断线...原创 2018-08-22 14:11:25 · 336 阅读 · 0 评论 -
数据结构(四)递归与回溯——POJ-1011 dfs+剪枝
题意:给一群剪切好了的木棍,问最短的原木棍长度。 解决思路:一开始自己想,想错了(捂脸),我只是把,给木棍长度进行从大到小的排序,记录总长,从最长的开始拼接,最长的棍在可以找到整除,然后就可以拼接(后来想想真是想的太简单了),然后能后来看了别人写的方法,用的是dfs+剪枝,单单dfs会超时。这个剪枝的办法就看了挺久emmm。 题目链接:poj 1011Sticks#include#inc原创 2018-02-06 09:36:36 · 416 阅读 · 0 评论 -
Red and Black POJ - 1979
题意:@可以到达的点有多少个#看作墙 思路:数据量不大直接dfs,注意将走过的点标记。#include#include#includeusing namespace std;struct d{ int x,y;}dir[]={{0,1},{0,-1},{1,0},{-1,0}};int count,n,m;bool vis[21][21];char point[21]原创 2018-02-06 10:56:17 · 144 阅读 · 0 评论 -
The Settlers of Catan POJ - 2258
题意:求最长路径,边不可重复,点可以。 解决思路:回溯暴力搜索#include#include#includeusing namespace std;const int N=26;int n,m,ans;int map[N][N],vis[N][N];//回溯暴力搜索void search(int cur,int len){ ans=max(ans,len);原创 2018-02-06 21:04:08 · 217 阅读 · 0 评论 -
Fractal POJ - 2083
题意:打印图形 解题思路:画图找规律,找到递推之间坐标的关系,发现自己对知识点的不掌握光宇‘\0’ 题目链接:poj083#include#include#include#includeusing namespace std;int n,sum;//3^6=729const int N=1000;char vis[N][N];void B(int num,int x,int原创 2018-02-06 23:12:29 · 195 阅读 · 0 评论 -
Modular multiplication of polynomials POJ - 1060
Modular multiplication of polynomials POJ - 1060 题意:求两个多项式相乘并且对一个多项式取模(就是除以这个多项式求得的余数)之前参考题解写的,后来有人问,自己又看了一遍代码,很多自己其实不是很明白的,从第二次看还要去一点点理解看出。emmm,至于有什么关于这题想说的,在注释中。#include<cstdio>#include&...原创 2018-02-28 15:58:40 · 312 阅读 · 0 评论 -
Longest Ordered Subsequence POJ - 2533
Longest Ordered Subsequence POJ - 2533 求最长上升序列。emmm模板题注意一下输出一开始赋初值:ans=1。#include<iostream>#include<cstdio>#include<cstring>#include<cmath>const int maxn=1000+10;int a...原创 2018-04-15 19:26:03 · 244 阅读 · 0 评论 -
Common Subsequence POJ - 1458
Common Subsequence POJ - 1458 求两序列的最长公共序列。 模板 L[i][j]=L[i-1][j-1]+1;更新 L[i][j]=max(L[i-1][j],L[i][j-1]);继承#include<iostream>#include<cstring>#include<cstdio>#include<c...原创 2018-04-16 20:28:00 · 262 阅读 · 0 评论 -
Treats for the Cows POJ - 3186
Treats for the Cows POJ - 3186题意:给出n然后n个序列a[i]。一个一个吃,第一天他的效益是1*a[i] ,第二天是2*a[i]. a[i]的取值只能从第一个开始或者从最后一个开始。 状态转移方程是: dp[i][j] 表示i-j 区间最大的利益 所以dp[i][j]=max(a[i](n-(j-i))+dp[i+1][j],dp[i][j-1]+a[j...原创 2018-05-06 22:57:30 · 178 阅读 · 0 评论 -
TOYS POJ - 2318
TOYS POJ - 2318 题意:给出n,m,x1,y1,x2,y2;n代表又n个隔板,m代表将放入m个玩具,x1,y1代表左上的点,x2,y2代表右上的点。 思路:初学向量这方面,根据题解的意思,自己写的。主 要利用的原理是向量叉乘:向量P与向量Q。 P*Q&gt;0 P在向量Q的顺时针方向(右) P*Q&lt;0 P在向量Q的逆时针方向 (左) P*Q=0 P与Q共线,可能同向...原创 2018-08-19 11:09:53 · 329 阅读 · 0 评论 -
POJ 2398 Toy Storage
POJ 2398 Toy Storage 思路:和TOYS POJ - 2318 题的思路一样,题意也是差不多,只不过输出为,玩具数量: 分区数,并按照玩具数量的升序输出。代码和之前的差不多,也只是修改了一下输出。#include<iostream>#include<cstdio>#include<cstring>#include<strin...原创 2018-08-19 12:37:27 · 267 阅读 · 0 评论 -
A Round Peg in a Ground Hole POJ - 1584
#include&lt;iostream&gt;#include&lt;cstdio&gt;#include&lt;algorithm&gt;#include&lt;cmath&gt;#include&lt;cstring&gt;using namespace std;const int N=200;const double eps=1原创 2018-08-25 09:40:59 · 226 阅读 · 0 评论