自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 poj 1651

题意:给定一个n个数的串,首尾不能删除,没删除一个数有一个代价,即与相邻两个数的乘积,求删除所有数后代价最小 分析:dp(i,j)表示区间i~j删除所有数后最小代价     对于区间i~i+2有一个初始的代价,即a[i]*a[i+1]*a[i+2]   枚举区间j从i+3~n dp(i,j) = dp[i+1][j]+a[i]*a[i+1]*a[j]     删除的数为i+1,所以应是删除i

2015-10-30 21:31:25 223

原创 poj 2955【区间dp】

题意:分析一个串中,()和[]匹配的最大数目,匹配一次+2 分析:dp(i,j)表示区间i~j括号匹配的最大值    i从后往前推,初始dp[i][j] = dp[i+1][j]    j从i+1~len,若中间存在某个k使得str[i] 与 str[k] 匹配,dp(i,j) = max(dp(i,j),dp[i+1][k-1]+dp[k][j]+2)   这题算是区间dp的入门题了。

2015-10-30 19:50:41 335

原创 HDU 3652

题意:找出区间内数中含有13的并且能被13整除的数的个数 分析:dp(i,j,k)表示i位数,余数为j;k = 0,不含13;k = 1,,不含13且末位为1;k = 2,含13

2015-10-25 20:10:59 325

转载 数位dp模版

int dfs(int i, int s, bool e) { if (i==-1) return s==target_s; if (!e && ~f[i][s]) return f[i][s]; int res = 0; int u = e?num[i]:9; for (int d = first?1:0; d <= u; ++d) res

2015-10-25 20:04:16 195

原创 hdoj_2089 【数位dp入门】

题意:就是统计区间内没有4和62的数的个数 分析:dp(i,0)表示i位数不存在不吉利数的个数,dp(i,1)表示i位数不存在不吉利数并且最高位为2的个数,dp(i,2)表示i位数存在不吉利数的个数    首先对dp数组进行一个预处理,处理出i位数出现上述情况的个数,统计的时候都有统计前缀0            dp(i,0) = dp(i-1,0)*9-dp(i-1,1)       前

2015-10-25 15:18:03 280

原创 HDU 1561 树形dp+背包

分析:攻下一座城堡的前提是要先攻下它的前驱城堡,建立一个以0为根结点的树,他的权值为0     dp(i,j)表示以i为根结点去j个的最大值。    dp(i,1) = v[i]   (v[i]为攻下i城堡获得的宝藏)            对与u结点取j+1个,可以转化为以孩子i为根取k个+以自己为根取j+1-k个和自己取j+1个的最大值   (为什么是j+1,因为建立了一个虚拟结点0,所

2015-10-23 21:35:05 298

原创 HDU 2196

题意:有n台电脑,他们之间连着线,之间具有权值,问每一台电脑到哪台电脑的权值最大。 分析:这n台电脑的关系可以构成一棵树,问题即问到叶子结点的最远距离是多少。    设dp(i,0)表示以i为子树的最远叶子结点距离,dp(i,1)表示以i为子树的次远叶子结点距离,dp(i,2)表示tree(root)-tree(i)的最远距离+dis(root,i),root为i的父节点

2015-10-23 15:22:37 344

原创 poj2342

题意:公司开晚会,每个人都有对应的活跃度,他们都不希望自己的上司来,邀请哪些人能使活跃度最大 分析:dp(i,0)表示第i个人不来   dp(i,1)表示第i个人来    dp(root,1) += dp(i,0)                                  上司来了,那么下属就不回来   dp(root,0) += max(dp(i,0),dp(i,1))      

2015-10-22 23:44:56 774

原创 最长公共上升子序列——hdu1423 Greatest Common Increasing Subsequence

给定a,b两个序列,求两个序列的最长上升子序列长度 分析:dp(j)表示b序列到达i时与a序列构成的LCIS的最优解。如果某一个时刻a[i]==b[j],那么显然,我们就应该在0到j-1中,找一个dp值最大的来更新最优解。这和求上升子序列是思想是一样的。另外,在枚举b[j]的时候,我们顺便保存一下小于a[i]的dp值最大的b[j],这样在更新的时候,我们就可以做到O(1)的复杂度,从而将整个算法

2015-10-22 23:28:30 271

原创 划分数

题意:将正整数N拆分成若干个正整数之和,有多少种不重复的拆分方案 例如 5=5,5=4+1,5=3+2,5=3+1+1,5=2+2+1,5=2+1+1+1,5=1+1+1+1+1  共七种 分析:dp(i,j)表示将i拆成若干个数字,最大的那个数字不超过j的方案数。    则有两种情况,第一种是最后一个数不超过j-1,此时方案数为g(i,j-1).否则最后一个数字刚好是j,此时方案数为g(i

2015-10-22 23:25:21 350

转载 Cookie/Session机制详解

会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Session。Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。 本章将系统地讲述Cookie与Session机制,并比较说明什么时候不能用Cookie,什么时候不能用Session。 1.1  Cookie机制

2015-08-14 00:44:11 154

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除