- 博客(6)
- 收藏
- 关注
原创 hdu 1078 记忆化搜索
hdu 1078 http://acm.hdu.edu.cn/showproblem.php?pid=1078 题意:每次可以朝一个方向走k格,必须走到一个数值比当前值大的点,问最多数值加起来能有多少,走到不能再走。 一开始定义错了,定义dp[i][j] 为以(i,j)为终点时所能得到的最大值。 dp[i+t*dx][j+t*dy] = max(dp[i+t*dx][j+t*dy],dp[i]
2015-10-24 23:14:47 481
原创 hdu 2795 单点更新
链接:http://acm.hdu.edu.cn/showproblem.php?pid=2795 题意: 有一个公告栏,h*m的,给定n个操作,对于每一个操作给定一个数wi,表示有一个通知的大小是1*wi的,每次对于这种操作将这个通知放在尽可能上面尽可能左边的位置中去。 思路: 有h行,将每一行初始为m,表示还有m个空位可以放,那么运用一棵线段树来记录下,行之间的区间最大值,就是可以放下的
2015-10-09 21:04:27 279
原创 hdu 1698 线段树 区间更新
感觉线段树要好好练一练。。。跟着大牛的pdf吧。。 http://acm.hdu.edu.cn/showproblem.php?pid=1698 区间更新主要运用的是一个lazy操作,就是说每次更新的时候不要更新到底,运用lazy标志将更新延迟到下次更新或者是查询的时候。 题意: 每次可以修改一段区间的值,最后查询整个的和。(所以查询函数都可以不写了。直接查根节点。。)#include <i
2015-10-09 13:36:03 322
原创 poj 2187 计算几何入门题 凸包
链接:http://poj.org/problem?id=2187 题意: 有n个牧场,给定每个牧场的位置,位置互不相同,计算距离最远的两个牧场的之间的距离。 思路: 如果某个点在另外三个点组成的三角形的内部,那么他就不属于最远点对。所以最后要考虑的就是所给点集中最外围的点了。 这些最外围的点的集合就是包含原点集的最小凸多边形的顶点组成的集合,被称为原点集的凸包。求凸包的方法: 基于平面
2015-10-07 15:36:41 343
原创 poj 2932 计算几何入门题 平面扫描
链接:http://poj.org/problem?id=2932 题意: 有n个圆,给定每个圆的圆心和半径,求所有最外层的,即不包含在其他圆内部的圆。 (任意两圆都没有公共点) 思路: 由于两两没有公共点,所以如果圆不在其他圆内部,那么这个圆的圆心就不可以在任何一个圆的内部。很直观的就O(n2)O(n^2)的算法。这肯定是过不了的,学习一个新的方法。平面扫描法。 平面扫描: 将扫描线
2015-10-07 15:07:09 727
原创 poj 1127 计算几何入门题 求线段交点
链接:http://poj.org/problem?id=1127 题意:给定m对木棍,判断是否相连,如果两者有公共点就可以认为是相连的。通过相连的木棍连在一起的两个木棍也可以认为是相连的。 所用到的知识: 计算几何通常采用向量的形式来描述线段。 这里运用 * 来表示向量的点积, ^ 来表示向量的叉积。 求判断点q是否在线段p2-p1上,首先判断点q是否在这条直线上,(p1-q)^(p2-
2015-10-04 20:06:34 513
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人