- 博客(8)
- 收藏
- 关注
原创 zoj 3429 映射
题目大意不难 由于没看到每次填充会清零和范围结果没想出来 三个坐标独立 互不影响 两个映射 知道 现在当前原来在哪里 知道 这里属于原来的位置现在在哪里 #include #include #include #include #include using namespace std; #define maxn 3005 #define ll long long
2015-06-30 23:17:08 434
原创 zoj 3432 异或
用了 map 爆炸了 本来想用字典树,后来看了一下别人怎么解决的 结果 ......#include #include #include #include #include using namespace std; #define maxn 3005 #define ll long long char ch[10]; char ans[10]; int n; int main()
2015-06-30 19:12:13 295
原创 poj 1252 简单背包
期末忙碌的日子终于结束了。 题目很简单 完全背包 #include #include #include #include #include using namespace std; #define maxn 3005 #define ll long long int dp[maxn]; int a[10]; int main() { int t; scanf("%
2015-06-30 18:57:37 337
原创 HDU 4570 简单的DP
其实题目意思 是我直接看别人博客 英语翻译实在太差 其实题目不是很难 给出一个长度为n的数列,分段,要求sig(ai*2^li)最小 ai是每一段第一项,li是每一段的长度 长度不超过20 #include #include #include #include #include using namespace std; #define maxn 2005 #defin
2015-06-14 16:13:53 291
原创 区间DP poj 2955 hdu 2476
区间DP以前 其实我都没怎么做过 因为队里面一直有人会 就一直没去看他 - = 写了一道入门题 和 上次没过的那题 大致有个了解了吧! 其实感觉有点像以前讲的 分治算法 对于每个区间里 找一个最优点 将两边分开 得到这个区间最优值 poj 2955 题意:最大的括号匹配 思路:要么合并区间,要么判断区间两个端点是否合法,dp[i][j]=max(dp
2015-06-13 10:42:39 321
原创 hdu 4412 DP
话说这题第一眼看去 像以前的POJ上一道四边形优化的题目 不过没有权重 所以一个区间最优点不是在中位数上 但是可以确定的是 他的答案是有单调性的 V型 然后肯定可以在点上 。 那么处理出一段区间 就是简单的dp了。 (~~~~~~不知道为什么从前往后推 cost 一直都错,结果参考了别人的代码才过的 = = !! 写法的问题 果然还是太菜了) cost 是可
2015-06-12 16:34:32 365
原创 01 分数规划 poj 2976
【定义】 01分数规划问题:所谓的01分数规划问题就是指这样的一类问题,给定两个数组,a[i]表示选取i的收益,b[i]表示选取i的代价。如果选取i,定义x[i]=1否则x[i]=0。每一个物品只有选或者不选两种方案,求一个选择方案使得R=sigma(a[i]*x[i])/sigma(b[i]*x[i])取得最值,即所有选择物品的总收益/总代价的值最大或是最小。 (这一段是我网络上考的
2015-06-10 21:08:00 318
原创 STNT 斯坦纳树 HDU 4085 3311
今天学习了斯坦纳树,主要是求一个最短网络。 而得到的最短网络必定是以树。 一个操作是 将两个子集 合并 一个操作是 在一个子集 加上一个点 dp[N][mark] N 代表当前在那个点上去扩张 mark 代表当前有所需K个子树的状态。 由于每一个点 都有可能是最优的扩张点 所以可以达到最优。 枚举子树的形态:dp[ i ][ j
2015-06-09 15:14:33 487
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人