Island and study-sister
Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)
Total Submission(s): 790 Accepted Submission(s): 273
Problem Description
Member...
分类:
其他好文 时间:
2015-07-15 17:00:50
阅读次数:
300
题意:有一个机器人要杀死其他n(1 <= n <= 16)个机器人,他自己配备了一个武器,并且给出了这个武器能杀死的敌人,如101表示他能杀死第1和第3个敌人,这样他就能得到第1和第3号敌人的武器,从而杀死更多的敌人,问他杀死所有的敌人的方法数。
题解:因为敌人数最多是16个,很容易想到应该是状态压缩dp,可以用f[S]表示状态S下进制位为1的敌人全被杀死的方案数,那么结果就是f[(1 << n)...
分类:
其他好文 时间:
2015-07-15 13:16:49
阅读次数:
134
题目大意:有一个人要去旅游,他想要逛遍所有的城市,但是同一个城市又不想逛超过2次。现在给出城市之间的来往路费,他可以选择任意一个点为起点。问逛遍所有城市的最低路费是多少解题思路:这题和POJ - 3311 Hie with the Pie相似
这里的状态标记要用三进制数来表示,就可以表示每个城市去过的次数了
设dp[i][state]为现在在i城市,逛过的城市状态为state的最低路费
状态转...
分类:
其他好文 时间:
2015-07-14 22:47:50
阅读次数:
234
题目大意:有一个网格,网格上面有草地和荒地,现在要在这个方格上面放士兵,士兵只能放在草地上,不能放在荒地上,且士兵不能两两相连,问有多少种放士兵的方式(也可以一个士兵都不放)解题思路:这题和POJ - 1185 炮兵阵地类似,是简单版的,就不详说了,poj有点坑啊,我的数组开小了,给出的是WA,找了半天没找到。。。
现在给出1185的链接
这里写链接内容#include
#inc...
分类:
其他好文 时间:
2015-07-14 22:37:05
阅读次数:
183
1088. 邮递员小FDescription因为制造类专业很难在大城市立足,曾经立志振兴中华之工业的小F,果断在本科毕业后转行做了一名光荣的邮递员。他的任务是每天从总局出发,行走于所管辖区域的若干的邮局,收集所有的信,然后再汇总返回总局。因为工作繁忙,同一个邮局他每天只希望去一次。来往于任意两个邮局...
分类:
其他好文 时间:
2015-07-14 20:24:24
阅读次数:
173
题目大意:有一间披萨店,要送n个披萨去不同的地方
现在给出每个位置之间的距离,每个位置都可以重复经过,问送完所有披萨再回到店里需要走的最短距离是多少解题思路:这题的话,有两个状态,一个是现所在地点,另一个是已经经过的地点,所以dp数组是二维的
设dp[i][j]为现所在地为i,经过的城市的状态为j的最短路线
那么dp[i][state | (1 << i)] = min(dp[i][state...
分类:
其他好文 时间:
2015-07-14 18:00:56
阅读次数:
197
题目大意:中文题目就不多说大意了 解题思路:
1.每行最多只有十个位置,且不是山地就是平原,那么就可以用1表示山地,0表示平原,将每一行的状态进行压缩了2.接着找出每行能放炮兵的状态,先不考虑其他行放炮兵和该行的山地对其造成的影响,枚举出所有的状态,并记录每个状态下放的炮兵数量
在上述情况下放炮兵,只需要考虑同行的炮兵是否会相互攻击就可以了,那只需要判断他的左边第一个位置是否有炮兵和左边第二个位...
分类:
其他好文 时间:
2015-07-14 15:37:56
阅读次数:
109
Swipe Bo
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 1549 Accepted Submission(s): 315
Problem Description
“Swipe Bo” is a pu...
分类:
其他好文 时间:
2015-07-14 06:15:11
阅读次数:
141
SRM 51321000CutTheNumbersProblem StatementManao has a board filled with digits represented asString[]board. The j-th character of the i-th element ofb...
分类:
编程语言 时间:
2015-07-11 00:52:27
阅读次数:
179
思想来自:http://blog.pureisle.net/archives/475.html主要思想是用1和0来表示是否被填,然后根据两行之间的状态关系来构建DP方程。1.首先初始化第一行 计算第一行可以被横着填的方案数。此时cnt是1 所以其实合法的dp[1][j]都是12.然后开始构建第二行至...
分类:
编程语言 时间:
2015-07-08 20:26:04
阅读次数:
177