E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
ACM--状态压缩DP
poj1185之
状态压缩dp
炮兵阵地TimeLimit: 2000MS MemoryLimit: 65536KTotalSubmissions: 17272 Accepted: 6593Description司令部的将军们打算在N*M的网格地图上部署他们的炮兵部队。一个N*M的地图由N行M列组成,地图的每一格可能是山地(用"H"表示),也可能是平原(用"P"表示),如下图。在每一格平原地形上最多可以布置一支炮兵部队(山地上不
xingyeyongheng
·
2014-03-19 13:00
位运算在
状态压缩DP
的运用技巧
位运算是既基础又好用的运算方法,它的实用性主要体现在
状态压缩DP
上,这也是
状态压缩DP
的难度所在,如果不了解位运算,
状态压缩DP
会觉得很难理解。。。
u012861385
·
2014-03-17 20:00
湖南多校对抗赛(2014.03.16) 比赛总结贴
看了一眼就知道是
状态压缩DP
。状态记录多少字母已经打出,以及最后一个字母的位置。略微计算一下复杂度,大概2^18
kbdwo
·
2014-03-16 17:00
比赛总结
状态压缩
第一道
状态压缩dp
解题思路:第一次接触
状态压缩dp
,以前只是听过没看过。看的大神们的思路和大神们的代码。f[mask|1>n>>m; for(;n>=0;n/=10)a[N
aszmq
·
2014-03-12 23:00
UVA 11600 - Masud Rana(
状态压缩DP
+记忆化搜索)
EMasudRanaInput: StandardInputOutput: StandardOutput MasudRana,ADaringSpyOf Bangladesh CounterIntelligence.Heisinanewmission.Thereisatotalncitiesin Bangladesh.Eachcityisconnectedtoallotherbybidirectio
u011217342
·
2014-03-08 11:00
12235 - Help Bubu(
状态压缩dp
)
Bubu'sbookshelfisinamess!Helphim!Thereare n booksonhisbookshelf.Wedefinethemessvaluetobethenumberofsegmentsof consecutiveequal-heightbooks.Forexample,ifthebookheightsare30,30,31,31,32,themessvalueis3,
u011217342
·
2014-02-28 22:00
uva12235 - Help Bubu 四维
状态压缩DP
Bubu'sbookshelfisinamess!Helphim!Therearenbooksonhisbookshelf.Wedefinethemessvaluetobethenumberofsegmentsofconsecutiveequal-heightbooks.Forexample,ifthebookheightsare30,30,31,31,32,themessvalueis3,tha
corncsd
·
2014-02-24 11:00
UVA 1252 - Twenty Questions(
状态压缩DP
+记忆化搜索)
Consideraclosedworldandasetoffeaturesthataredefinedforalltheobjectsintheworld.Eachfeaturecanbeansweredwith``yes"or``no".Usingthosefeatures,wecanidentifyanyobjectfromtherestoftheobjectsintheworld.Inoth
u011217342
·
2014-02-23 22:00
UVA 11795 - Mega Man's Mission(
状态压缩dp
)
BMegaMan’sMissionsInputStandardInputOutputStandardOutput MegaManisofftosavetheworldagain.HisobjectiveistokilltheRobotscreatedbyDr.Wilywhosemotiveistoconquertheworld.Ineachmission,hewilltrytodestroyapa
u011217342
·
2014-02-20 09:00
HDU 3001 Travelling (
状态压缩DP
)
题意:有n个点(n #include #include #defineINF0x3f3f3f3f usingnamespacestd; intn,m; inttri[12],dig[59050][12];//dig[s][i]表示状态s的第i位 intdp[59050][12]; intEdge[11][11]; intans; voidinit()//初始化计算tri[i]为3的i次方和di
blzorro
·
2014-02-08 20:00
UVa 11825 Hackers’ Crackdown /
状态压缩DP
代码就是书上的这题太神了太好了直接看书吧孩子书上讲的蛮好的2进制枚举子集还是很巧妙的a[i]表示的树中1的地方表示相连所有1组成一个集合cover[i]表示a[i]的组合比如i= 6就是110就是a[1]a[2]2个集合的并集dp[i]表示集合i做多终止几项服务for(ints0=s;s0;s0=(s0-1)&s)s0枚举了s的子集可以自己比划一下如果cover[s0]==all(all全为1)
u011686226
·
2014-01-23 14:00
poj 2411
状态压缩dp
横的看成11,竖的看成0/1,1.相邻2行之间是否冲突就是看a|b是否全是1。2.同一行是否冲突就是看横着的1的个数是否是奇数。#include #include #include #include #include usingnamespacestd; longlongdp[15][1>=1; if(sta&1){sta>>=1;tot++;} elsereturnfalse; } elsest
t1019256391
·
2014-01-16 23:00
[置顶] 啦啦
动态规划:区间dp,树状dp,数位dphdu3555,sgu258,sgu390 队列优化:zoj3399最小表示法的
状态压缩DP
:spoj2159 专题链接:http://acm.hust.edu.cn
dslovemz
·
2014-01-09 14:00
acm--
找出n之内的所有完数及因子
/* *程序的版权和版本声明部分: *Copyright(c)2013,烟台大学计算机学院学生 *Allrightsreserved. *文件名称: *作者:田成琳 *完成日期:2013年12月24日 *版本号:v1.0 *对任务及求解方法的描述部分: *输入描述:一个数n SampleInput 1000 *问题描述:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如,6的因子为1、2、
u012246348
·
2013-12-24 17:00
完数
因子
acm--
字符串的格式化
/* *程序的版权和版本声明部分: *Copyright(c)2013,烟台大学计算机学院学生 *Allrightsreserved. *文件名称: *作者:田成琳 *完成日期:2013年12月19日 *版本号:v1.0 *对任务及求解方法的描述部分: *输入描述:输入一个字符串 SampleInput asdfasdf 3 *问题描述:输入一个字符串,将其按给定的长度n格式化并输出,若n=0,则
u012246348
·
2013-12-23 13:00
字符串
格式化
POJ 3254 Corn Fields (
状态压缩DP
)
题意:一个矩阵里有很多格子,每个格子有两种状态,可以放牧和不可以放牧,可以放牧用1表示,否则用0表示,在这块牧场放牛,要求两个相邻的方格不能同时放牛,即牛与牛不能相邻。问有多少种放牛方案(一头牛都不放也是一种方案)思路:dp[i][s]代表第i行状态为s(s是每个位置放与不放组成的0-1序列对应的十进制数)时所能得到的方案总数递推方程:dp[i][s]=Σdp[i-1][f] (f为i-1行的状态
blzorro
·
2013-12-04 20:00
优化
动态规划
poj
状态压缩
lightoj1086 - Jogging Trails(
状态压缩dp
)
lightoj1086-JoggingTrails(
状态压缩dp
)一道有点小思维的
状态压缩dp
题意:给出n个点,m条边的一幅无向图,n<=15,m<=3000。
No__stop
·
2013-11-25 14:00
dp
棋子--
状态压缩dp
题目描述:在一个N*N的棋盘上放棋子,每一个棋子的上下左右都没有棋子,也就是不相邻,一共有多少种放法?(N #include #include usingnamespacestd; ints[1111];/**记录所有满足条件的单行表示*/ longlongf[11][1111];/**f[i][j]表示第i行为第j种状态的摆放总数*/ intn,m;/**n表示棋盘大小,m表示满足条件的状态
ACdreamers
·
2013-11-21 16:00
插头DP——从不会到入门(POJ 2411,HDU 1565,HDU 2167,HDU 1693,Ural 1519)
学习插头DP前,你得搞清楚
状态压缩DP
是什么。这里推荐AcCry的一篇状态压缩教程:状态压缩总结。刷完教程里的8题之后,
状态压缩DP
也就是入门了,也就可以开始学习
AcCry
·
2013-11-10 17:00
dp
插头DP
hdu 4778 13杭州I题
状态压缩dp
+博弈
分析:博弈的过程是一个树,而且要知道在最优策略情况下,肯定是选择了树上的某一条树枝,也就是一条路径。所以我们可以用dp来找出某一条最优路径,而且我们可以发现2个人博弈的目的是为了让自己与另一个人的差值尽可能的大。解法:用dp[i]表示状态i(能拿的置为1)的情况下先手减去后手分数的最大值。初始化dp[(1 #include #include usingnamespacestd; intG,B,S;
c3568
·
2013-11-09 20:00
2013region
HDU-4529 郑厂长系列故事——N骑士问题
状态压缩DP
状态压缩DP
就是另外一个思路的,理论上时间复杂度是8*n*2^24,但是由于限制比较多,也就能够解决了。设dp[i][
·
2013-11-09 20:00
HDU
light oj 1073
状态压缩dp
+输出字典序最小的解
算是比较基本的题,不忍直视的搓代码,string乱搞后惨不忍睹,调了好久终于AC,代码能力弱成渣。做法:给你的一些串中,你先暴力去掉一些无用的子串,比方有aaaa和aa,那aa就没用了,去掉然后从下往上放字符串(注意方向,为了输出字典序最小),我的val[i][j]表示串i在下,串j在上所增加的str[i]的前缀长度 如 aabb bbcccc,那前缀为aa,长度为2然后dfs搜出解。string
c3568
·
2013-11-07 20:00
uva10911 - Forming Quiz Teams 集合DP
和
状态压缩DP
差不多。 给你一些点,要求两两配对,问这些配对点距离和的最小值。
corncsd
·
2013-10-17 22:00
ZOJ 2630 Plane Partition(轮廓线
状态压缩DP
)
题意:给你一个a*b的矩阵,往里面填充非负整数且满足x(i,j) #include typedeflonglongll; constintmaxn=6000000; lldp[maxn]; inta,b,c,q[11]; llww[11][11][11]; intget(intx,inty,intq[]){ intret=x; ret=ret*7+y; for(inti=0;i=0;i--)
u010710717
·
2013-10-06 21:00
ZOJ 2563 Long Dominoes(
状态压缩DP
)
problemId=1563题目大意:在h*w的矩阵里铺满1*3的小矩阵,共有多少种方法SampleInput33 310 00SampleOutput2 28分析:
状态压缩DP
,跟ZOJ1100
·
2013-10-05 16:00
long
CERC2012 A - kingdoms
状态压缩dp
题目: Clickhere 题意: 有N个公司..每个公司对每个公司有欠款(负数)或者借款(正数)...一个公司如果借款大于欠款就可能倒闭..一个公司倒闭后其对于得债务关系就都没了..问若最后只存在一个公司,可能是哪些... 题解: 公司倒闭是相继倒闭的..又公司数量不超过20...容易想到状态压缩
kk303
·
2013-10-03 19:00
hdu Disney's FastPass(
状态压缩dp
)
这种题我一直喜欢用bfs搞的,但是这个题不太好bfs,主要是我刚开始想的是通过边进行状态转移,这样很不好写。。。于是就坑爹了,调了很久sample都没出。。。于是学习了一下别人的思想。。。通过“目的”来进行状态转移而不是边。当你在某个点的时候,你可以为了游历某个景点去某个点,也可以为了获取某个点的票而去某个点。能想到这一点的话状态转移方程就很好写了,但是也要能想到啊。。。ps:注意代码中的(1)跟
diary_yang
·
2013-10-03 17:00
uva 10604 - Chemical Reaction(
状态压缩dp
)
题目链接:10604-ChemicalReaction题目大意:给出n和m,有n种化学药剂,型号由1~n,然后给出n*n行代表相应的两种化学药剂反应后的生成物以及释放的热量,然后给出m个试管,每种试管中有对应的药剂,要求将m种药剂反应合成一种,不要求反应后药剂的种类,要求反应所散发的热量最少。注意:i和j反应可能与j和i反应不同,反应可能吸热,每组测试以/结束。解题思路:开一个cnt数组记录每种药
u011328934
·
2013-09-30 23:00
HDU 2825 Wireless Password(AC自动机 +
状态压缩DP
入门)
题目链接:Clickhere~~题意:给m个单词构成的集合,统计所有长度为n的串中,包含至少k个单词的方案数。解题思路:令dp[i][j][mask]表示长度为i,跑到自动机节点j,已经包含单词为集合mask的方案数。Note:构造AC自动机时,val记录的是会包含的状态。#include #include #include #include usingnamespacestd; #defin
dgq8211
·
2013-09-24 16:00
九度OJ 9月赛第二场 题目1542:黑白迷阵 (
状态压缩DP
)
题目描述:黑白迷阵是一个GrassLand编写的手机游戏,它的规则非常简单,有如下4*5的棋盘,其中一些是格子是黑色,一些格子是白色的,每当点击其中某一个格子,它以及它上下左右五个格子的颜色会发出反转,如下图 游戏胜利的条件很简单,把所有的格子变为黑色即可。GrassLand想知道,给定一个游戏格局,至少需要几次点击,就可以获得游戏的胜利。输入:输入包含多组测试用例
xiaozhuaixifu
·
2013-09-22 22:00
状态压缩动态规划
poj 3254 Corn Fields (
状态压缩DP
)
题目:http://poj.org/problem?id=3254思路见代码:#include usingnamespacestd; constintMOD=100000000; constintMAX_N_M=12; introw_state[MAX_N_M]; //枚举出合法的状态数 intLegalState[2000],nstate; intdp[MAX_N_M][2000],n,m;
xiaozhuaixifu
·
2013-09-20 21:00
状态压缩动态规划
poj-2411-
状态压缩DP
用一个vector容器来记录当前状态下有哪些状态可以继承。比如说vec[i]里面的所有的数代表当第一行为i状态时,第二行的可行状态。对于状态i,其二进制中0的地方表示为当前状态为竖着的木板的下半部分。 其二进制中1的地方表示为当前状态为横着的木板或者竖着的木板的上半部分。#include #include #include #include #include usingnamespacestd
rowanhaoa
·
2013-09-19 15:00
UVA 10651 Pebble Solitaire
状态压缩dp
一开始还在纠结怎么表示一个状态,毕竟是一个串。后来搜了一下题解发现了这里用一个整数的前12位表示转态就好了,1~o,0~'-',每个状态用一个数来表示,然后dp写起来就比较方便了。代码:1#include 2#include 3#include 4#include 5#include 6#include 7#include 8#include 9#include 10#inclu
·
2013-09-18 22:00
AIR
poj-3254-Corn Fields-
状态压缩DP
最近看题真的脑残了。。1,结果忘记取模WA一次2,结果忘记判断可不可存在WA了多次#include #include #include #include usingnamespacestd; #defineMOD100000000 #definell__int64 lldp[15][5001]; intmap[15][15]; intmain() { intn,m,i,j,k,l; while(~
rowanhaoa
·
2013-09-18 22:00
hde 4739 Zhuge Liang's Mines(
状态压缩DP
,4级)
ZhugeLiang'sMinesTimeLimit:2000/1000MS(Java/Others) MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):306 AcceptedSubmission(s):139ProblemDescriptionIntheancientthreekingdomperiod,ZhugeLia
nealgavin
·
2013-09-16 12:00
HDU 3681 Prison Break(
状态压缩dp
+ BFS)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3681前些天花时间看到的题目,但写出不来,弱弱的放弃了。没想到现在学弟居然写出这种代码来,大吃一惊附加敬仰之情。这里借用下他的成果,好好学习吧,骚年***SampleInput55GDDSSSSSFSSYGYSSGSYSSSYSS00 SampleOutput4题意:给出矩阵(作为监狱)和在监狱中的一个
·
2013-09-09 03:00
break
UVALive 2031 Dance Dance Revolution (舞步转移,
状态压缩DP
,4级)
N-DanceDanceRevolutionCrawlinginprocess...CrawlingfailedTimeLimit:3000MS MemoryLimit:0KB 64bitIOFormat:%lld&%lluSubmitStatusAppointdescription:SystemCrawler(2013-06-01)DescriptionMr.White,afatma
nealgavin
·
2013-08-29 09:00
POJ 1185
状态压缩DP
1.为何状态压缩: 棋盘规模为n*m,且m≤10,如果用一个int表示一行上棋子的状态,足以表示m≤10所要求的范围。故想到用ints[num]。至于开多大的数组,可以自己用DFS搜索试试看;也可以遍历0~2^m-1,对每个数值的二进制表示进行检查;也可以用数学方法(?) 2.如何构造状态: 当然,在此之前首先要想到用DP(?)。之后,才考虑去构造状态函数f(...)。 这里有一个链式
·
2013-08-24 03:00
poj
poj 2411 Mondriaan's Dream
状态压缩DP
http://blog.csdn.net/hopeztm/article/details/8062562这篇博文比较容易懂。题目这个题目的题意很容易理解,在一个N*M的格子里,我们现在有两种类型的砖块,1*2和2*1,问一共有多少种方案,可以将整个N*M的空间都填满。最简单的例子就是下面的了:编程之美中题目:某年夏天,位于希格玛大厦四层的微软亚洲研究院对办公楼的天井进行了一次大规模的装修.原来的地
xiaozhuaixifu
·
2013-08-23 14:00
状态压缩dp
HDU 3001 Travelling (三进制
状态压缩DP
+BFS)
题意:有n个点(n #include #include #include #defineINF0x7FFFFFFF usingnamespacestd; intp[11]; intpos[60000][11]; intdist[11][11],sum[11][60000]; structnode{ intx,buff; }q[1111111]; inthead,tail,n,m,ans; void
paradiserparadiser
·
2013-08-23 11:00
poj 2686 Traveling by Stagecoach ---
状态压缩DP
题意:给出一个简单带权无向图和起止点,以及若干张马车车票,每张车票可以雇到相应数量的马。点u,v间有边时,从u到v或从v到u必须用且仅用一张车票,花费的时间为w(u,v)/ticket[i],其中w(u,v)表示边的权值,ticket[i]表示第i张车票可以雇到的马匹数。求从起点到终点花费的最小时间。如果不能到达终点,输出“Impossible”。(点数 #include #include #in
xiaozhuaixifu
·
2013-08-21 22:00
压缩
动态规划
状态压缩dp
入门题
ViewCode#include#include#definemax(a,b)(a>b?a:b)intdp[1max)max=count;}if(max>len[i][j])len[i][j]=len[j][i]=max;}}}memset(dp,0,sizeof(dp));for(i=0;imax)max=dp[i][j];printf("%d\n",max);}return0;}有个小小的注意
haha593572013
·
2013-08-19 18:00
HDOJ 1507 - Uncle Tom's Inherited Land* 构图做二分图最大匹配
题解: 这题我第一反应是
状态压缩DP
..但是看范围.好吧..二分图匹配..但是有个问题..如果直接的点对点的做边..会出现混乱..并且不符合2分图的基本模型(同侧的点无直接的任何关系才行
kk303
·
2013-08-19 16:00
POJ 1185 炮兵阵地(
状态压缩DP
)
题意:由方格组成的矩阵,每个方格可以放大炮用P表示,不可以放大炮用H表示,求放最多的大炮,大炮与大炮间不会互相攻击。大炮的攻击范围为两个方格。分析:这次当前行的状态不仅和上一行有关,还和上上行有关,所以用三维dp【i】【j】【k】来表示第i行的状态为j,i-1行状态为k时最多的大炮。一开始看数据量为100*1024*1024铁定要爆,但是由于大炮的攻击方式,单独看每一行最多只有几十种可行的状态,所
paradiserparadiser
·
2013-08-17 21:00
poj3254 poj1185
状态压缩DP
刚做
状态压缩DP
。。思路和一般的DP一样,只是每次都对应一种状态。目前只会最简单的。。用一个数的二进制表示一种状态。
小小小小葱
·
2013-08-17 16:48
DP
poj3254 poj1185
状态压缩DP
刚做
状态压缩DP
。。思路和一般的DP一样,只是每次都对应一种状态。 目前只会最简单的。。用一个数的二进制表示一种状态。
corncsd
·
2013-08-17 16:00
POJ 2411 Mondriaan's Dream (
状态压缩DP
)
题意:给定一个矩阵,只能放1*2的木块,问将这个矩阵完全覆盖的不同放法有多少种。分析:横着放为11,竖着放为竖着的01,所以判断相邻两行是否被完全覆盖:只需判断两行状态合集(j|k)是否是满的,两种状态是否有冲突(j&k)。第一行直接预处理就行。#include #include #include #include usingnamespacestd; __int64dp[12][1>1)&1)b
paradiserparadiser
·
2013-08-17 11:00
POJ 3254 Corn Fields (
状态压缩DP
)
分析:方格边长范围只有12,用
状态压缩dp
好解决。预处理:每一行的障碍用一个状态保存好 每一行不考虑障碍的所有符合要求的状态保存好 第一行的方案数记录好。然后一行一行递推,每一行只与上一行有关。
paradiserparadiser
·
2013-08-16 21:00
hdu 3001(
状态压缩dp
)
点击打开链接题意:有n个城市,m条路,每个城市最多走两次,求走完全部城市的最小路程。。。因为没个城市最多走两次,所以要用3进制,求出1k)map[i][j]=map[j][i]=k; } for(i=0;i=2)continue; if(map[j][k]==inf)continue; dp[i+t3[k]][k]=min(dp[i][j]+map[j][k],dp[i+t3[k]][k]); }
yyf573462811
·
2013-08-16 10:00
HDU
状态压缩dp
hdu1565(
状态压缩dp
)
点击打开链接题意:给你一个n*n的矩阵,每个位置有一个非负数,在矩阵中取数字,要求,取的数字,不能相邻。。用网络流做的话0ms.#include"stdio.h" #include"string.h" #defineN21 intstate[1y?x:y; } intmain() { inti,j,k; while(scanf("%d",&n)!=-1) { for(i=0;ians)ans=dp
yyf573462811
·
2013-08-16 09:00
HDU
状态压缩dp
上一页
15
16
17
18
19
20
21
22
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他