ACM
文章平均质量分 78
Surlavi
这个作者很懒,什么都没留下…
展开
-
poj-1050- To the Max
第一次写博客啊,据说写博客有百利而无一害...嘛不管怎么样试一下吧 这道题刚开始就看到提示是动态规划了,但是想了半天都没想出来该怎么弄,然后就直接枚举了,poj上n 之后拿到百炼去提交,TLE,再看题目发现n变成500了(原来同样题号的题目也可以不一样= =),之后上网查了查才恍然大悟 其实就是把矩阵”拍瘪了“,变成一维,然后就是求最大连续和了,在枚举一下要把那个范围内的矩阵压缩找到最大值就原创 2013-05-24 14:02:08 · 517 阅读 · 0 评论 -
poj 1014 Dividing-动态规划
题目大意:有六种珠子价值分别为1,2,...,6,给定每种珠子的总数,问是否能将这些珠子分解成价值相等的两堆 因为珠子的数目很大所以直接DP肯定会超时,所以要设法减小数据的规模,刚开始听人讲要取模做,觉得好像应该是这么回事的样子,但是自己又不能证明这种方法是对的,然后敲了个代码,WA,把人家取模的例程submit,WA.....最后看了poj上某大神的反例才发现取模的做法是错的....原创 2013-05-27 10:46:15 · 489 阅读 · 0 评论 -
POJ 2104 K-th Number
刚开始接触线段树,然后碰到这道题用“线段树”的方式去思考没想明白,然后看了一篇题解恍然大悟,方法果然高明 题目描述: 给定数组a[n](n 如果对每一次查询都先排序的话肯定会超时(mnlogn),既然数组是给定了的,我们可不可以做一些预处理呢? 从有序的数组中找第k大的数是容易的,但是我们显然无法对每一段数组都先进行排序,这样空间是承受不起的 如果查询的区间越大排序所需要的时间原创 2013-10-23 23:09:05 · 482 阅读 · 0 评论 -
hdu 4347 The Closest M Points KD树
KD树(K-dimension tree),个人理解就是一棵扩展到k维空间上的二叉搜索树,它在每一层用不同的维度进行二分,将空间中的点按一定的顺序组织成二叉树的形式,以方便搜索,具体的内容就不在这里细述了。 来看看这道题吧,题目大意:给定K( 直接暴搜的话肯定会超时,这里用KD Tree存储这些点,然后剪枝搜索 这道题有个大坑,数据是多组的,“There are multiple test原创 2013-11-27 15:10:21 · 962 阅读 · 1 评论 -
POJ 1325 Machine Schedule 二分图 最小点覆盖
题目大意:有两台机器,分别有m,n个状态,最开始的时候都位于状态0,现在给定了k个任务,每个任务都可以在A的某一个状态或B的某一个状态运行,求问完成所有的任务所需的切换机器状态的总次数 机器的每一个状态用一个点表示,显然这是一个二分图,如果在每个任务指定的两个状态连一条线的话就可以用一条边代表这个任务,而让这个任务在某台机器上执行就是给这条边选择一个端点,每切换一次状态就是选择一个点,那原创 2013-12-03 15:12:21 · 632 阅读 · 0 评论 -
poj 3016 K-Monotonic 左偏树+动态规划
又是一个神奇而又优美的数据结构——左偏树 左偏树是什么?左偏树是一棵二叉树,是可合并的堆,它具有“左偏”的性质——简单地说就是左儿子比右儿子“长”,以来维持一定的效率 左偏树能做什么?刚才说了,左偏树是可合并的堆,堆能干的他基本都能干,而合并操作可以达到O(logn)的时间复杂度,而且作为可合并堆,左偏树的实现非常简单 具体的内容就不在这赘述了,百度上有很多更好的资料可以参考 题目原创 2013-12-10 15:43:29 · 1344 阅读 · 0 评论 -
POJ 2155 Matrix 树状数组
题目大意: 给定一N*N的矩阵,每个元素为1或0,初始全为0,有如下两种操作 (1)将某一个矩形区域内的所有元素取反,即1改为0,0改为1 (2)询问某一个元素的值,输出0或1 首先不难看出,因为只有01所以与其取反,不如给区间中的某个元素都+1,和开关灯问题的性质相同,最后模2即可; 查询某个点的当前的值,可以转化为查询当前所有的操作中有多少个操作区间包含所查询点(因为每个操作都是给区原创 2013-12-04 16:47:12 · 522 阅读 · 0 评论 -
POJ 1141 Brackets Sequence 动态规划
题目大意:给你一个由小括号和中括号组成的原创 2014-05-08 09:25:34 · 348 阅读 · 0 评论