自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Manacher算法(O(n)求最大回文字串的长度)(HDU3068)

最近看了一个讲Manacher算法非常好的帖子,地址:http://acm.uestc.edu.cn/bbs/read.php?tid=3258&page=1非常容易懂,简直太神了。自己写了下hdu3068,代码如下:#include #include #include #include using namespace std;char s[211111],c[111111];

2014-12-20 09:49:36 299

原创 HDU4804(插头dp)

这道题的题目大意是这样的:有一个100*10的棋盘,上面有一些格子不能放砖块。现在有两种砖块,1*1的和1*2的。1*1的砖块最少放c个,最多放d个;1*2的砖块没有个数限制,可以水平放,也可以垂直放。砖块与砖块不能重叠。问有多少种方案把整个棋盘放满。解法:用插头dp解决这类问题,用一个二进制数表示轮廓线上的插头状态,0表示没有插头,1表示有插头。因为1*1的砖块有个限

2014-12-14 22:40:47 487

原创 CDOJ885(插头dp,状态压缩)

题意为给一个n*m的棋盘,有两种木块,1*2的和2*1的,求将整个棋盘放满有多少种方案。n,m都是 小于12的。可以用插头dp来求解,定义状态1表示当前格子有插头,0表示没有插头。显然每个格子只能而且必须有1格插头,那么状态的转移:当前格子的插头状态为00,则由上一状态的00,01,10转移而来;当前格子的插头状态为01,或者10,则由上一状态的00转移过来;当前格子的插头状态为1

2014-12-13 12:17:39 409

原创 hdu1693插头DP求多回路

刚学习了插头dp,找了道基础题练练手。用一个n+1位的二进制数表示轮廓线上的状态,1代表有插头,0代表没有插头。那么状态的转移为:如果当前格的两个轮廓线上只有一个插头,那么dp[i][j][k]=dp[i][j-1][k]+dp[i][j-1][k^x^y],否则dp[i][j][k]=dp[i][j-1][k^x^y];代码如下:#include #include #inc

2014-12-12 22:15:51 342

空空如也

空空如也

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

TA关注的人

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