![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
解题报告
AcCry
A student
展开
-
HDU3995 最小包围圆变形
这题出2了,下次注意点。时间卡紧了导致一些不太好的最小包围圆模板过不了。精度上要求有点高,可能导致了一些wa。有的队方法完全正确,由于出题的经验不足,可惜了。直接把标程贴出来吧。题意:两个点集的最小包围圆, 随机增量的时候,改一下模板就行了。原创 2011-09-02 20:52:43 · 2190 阅读 · 0 评论 -
HDU3905 DP
通过这题看出DP的功底还是不行啊,仍需提高。题意:一节课有N分钟,ZZ需要睡M分钟,每分钟都有其效益值,ZZ若听课,则必须连续听L分钟以上。问能获得的最大效益值。M分钟的睡眠可以不连续题解:动态规划,状态设计:dp[i][j]表示第i分钟已经睡过j分钟可以获得的最大效益。原创 2011-08-03 18:48:47 · 1887 阅读 · 0 评论 -
HDU3902 判断简单多边形是否对称
先求重心,然后枚举,对于奇数个顶点的多边形,枚举一个点和一条边的中点所成的直线,对于偶数个顶点的多边形,对称轴可能过两条边的中点或者两个顶点(O(n)枚举,由于要满足过重心这个条件,可以使该层复杂度优化为常数),然后判断即可(O(n))代码(各种模板堆积):#includ原创 2011-08-03 15:30:51 · 1999 阅读 · 0 评论 -
HDU3868 HASH+随机增量
求点集中两两之间距离之和最小的三个点<!--@page {margin:2cm}p {margin-bottom:0.21cm}-->在使用增量法过程中,我们需要对于新加入的点是否能够构成新的答案进行高效的判定。假设当前集合的答案为r,对于新加原创 2011-08-09 19:58:30 · 2069 阅读 · 3 评论 -
HDU3920 状压DP+优化+记忆化搜索
先按每个点到射击点的距离排个序,然后记忆化搜索,用状态压缩dp即可#include #include #include #include using namespace std;const int MAXN = 21;#define EPS 1e-8int n原创 2011-08-09 21:05:23 · 1965 阅读 · 1 评论 -
HUST1024二分答案+最大流
题意:N个男孩和N个女孩要开个跳舞party,把愿意一块跳舞的男孩女孩的编号给出,男孩女孩最多和K个不喜欢的女孩男孩跳舞,问最多举行几轮(每一轮的舞伴不同)解析:拆点,二分答案—建图:源点到男孩1的边容量为二分的值,女孩1到汇点的边容量为二分的值,男孩1到喜欢女孩1的边容量为原创 2011-07-29 19:45:14 · 1556 阅读 · 0 评论 -
HDU3874 树状数组的灵活应用
给一个序列,查询任意一段的和。一段中重复的数不算。看见这个题的第一想法是线段树,用线段树进行查询操作,已经用线段树A了。刚才看见这个题的另外一种解法,一种树状数组的离线算法。很好很强大。用map记录当前值是否出现过,并记录这个值的最后一处的位置,当遍历到某个值时,如果原创 2011-08-10 18:31:38 · 1871 阅读 · 0 评论 -
HDU3921 枚举搜索
4*n个点,每次选4个点,使得距离(射击点---1---2---3---4)最短。问最终将所有点都选完的最小距离题目给了一个贪心策略,在时间允许范围内搜索即可枚举任意两点b和c,计算出距离b和距离射击点距离之和最小的点tmp1和次小的点tmp12(并且该点当前未被访问原创 2011-08-11 09:42:12 · 1320 阅读 · 0 评论 -
HDU3938 并查集 并查集
先按边权值排个序,每次加入一条边,用并查集,关键看懂题。#include #include #include #include using namespace std;const int MAXN = 10010;int N,M,Q;struct Edge{原创 2011-08-11 20:41:26 · 1561 阅读 · 0 评论