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
———状态压缩
BFS+
状态压缩
HDU1429
胜利大逃亡(续) Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 3734 Accepted Submission(s): 1216 Prob
·
2015-11-12 12:57
HDU
ACM学习历程—ZOJ3471 Most Powerful(dp &&
状态压缩
&& 记忆化搜索 && 位运算)
Description Recently, researchers on Mars have discovered N powerful atoms. All of them are different. These atoms have some properties. When two of these atoms collide, one of them disappears and
·
2015-11-12 11:19
ACM
POJ 1321 棋盘问题(DFS & 状压DP)
在Discuss里看到有同学用
状态压缩
DP来写,就学习了一下,果然很精妙呀。 状态转移分两种,当前行不加棋子,和加棋子。
·
2015-11-12 11:05
poj
poj 2686 Traveling by Stagecoach ---
状态压缩
DP
题意:给出一个简单带权无向图和起止点,以及若干张马车车票,每张车票可以雇到相应数量的马。 点 u, v 间有边时,从 u 到 v 或从 v 到 u 必须用且仅用一张车票,花费的时间为 w(u, v) / ticket[i], 其中 w(u, v) 表示边的权值,ticket[i] 表示第 i 张车票可以雇到的马匹数。求从起点到终点花费的最小时间。 如果不能到达终点,输出“Impossib
·
2015-11-12 09:26
poj
poj 2411 Mondriaan's Dream_
状态压缩
dp
思路:
状态压缩
不懂看,http://blog.csdn.net/neng18/article/details/18425765 用1表示放置了骨牌,0表示没有放置。
·
2015-11-12 09:09
poj
poj 2288 Islands and Bridges_
状态压缩
dp_哈密尔顿回路问题
题目链接 题目描述:哈密尔顿路问题。n个点,每一个点有权值,设哈密尔顿路为 C1C2...Cn,Ci的权值为Vi,一条哈密尔顿路的值分为三部分计算: 1.每一个点的权值之和 2.对于图中的每一条CiCi+1,加上Vi*Vi+1 3.对于路径中的连续三个点:CiCi+1Ci+2,若在图中,三点构成三角形,则要加上Vi*Vi+1*Vi+2 求一条汉密尔顿路可以获得的最大值,并且还要输出有多少条这样的
·
2015-11-12 09:05
bridge
Vijos 1286 座位安排(
状态压缩
DP)
题目链接 先是一个转化,将n和m中较小的的为m这样状态数会小于1<<9。看题后,是嘛想法都啊没有。。看了DISUSS中有人提到这点。。。 写完,调了一下,尝试了几次,发现有两组过不了。想想极限数据,可能还是会爆__int64,然后乱搞改编一下,求组合数模版。。。水过了。。。 还是用STL中vector写的。。。以后还是用数组把。。。 1 #include <cstd
·
2015-11-12 09:22
OS
Vijos 1456 最小总代价(
状态压缩
DP)
题目链接 用二维数组表示,第一维表示状态,第二维表示此状态最后一个专递者。 状态转移为 if((~que1[j])&(1<<u))//开始这个判断想错了,一直RE。。。对位运算不熟啊。。 dp[que1[j]+(1<<u)][u] = min(dp[que1[j]+(1<<u)][u],dp[que1[j]][k]+p[k+1][u+1]);
·
2015-11-12 09:21
OS
Vijos 1193 扫雷(
状态压缩
DP)
题目链接 思路很简单。。。但是细节啊。。。。WA了好多次。。。 1 #include <cstdio> 2 #include <cstring> 3 #include <cmath> 4 #include <string> 5 #include <ctime> 6 #include <cstdlib>
·
2015-11-12 09:21
OS
Vijos 1002 过河(
状态压缩
)
题目链接 经典的
状态压缩
题目。
·
2015-11-12 09:40
OS
HDU 1565 方格取数(1)(
状态压缩
DP)
题目链接 水过的,就是普普通通的枚举上一层和这一层,应该可以加上队列优化,降复杂度。 1 #include <iostream> 2 #include <cstdio> 3 #include <cstring> 4 #include <cmath> 5 #define eps 1e-9 6 #define INF -100
·
2015-11-12 09:32
HDU
HDU 4336 Card Collector(容斥原理+
状态压缩
)
题目连接 多校的题目,和网络赛那个多么的相似啊。。。枚举每个状态 含有奇数的期望-偶数卡的期望,就是最后的结果。 1 #include <iostream> 2 #include <cstdio> 3 #include <cstring> 4 #include <cmath> 5 #define eps 1e-9 6 us
·
2015-11-12 09:30
Collector
POJ 2411 Mondriaan's Dream(
状态压缩
DP)
题目链接 早就见过这个题,开始以为有公式的,推了几次没推出,后来知道这个题是
状态压缩
DP。最近开始看
状态压缩
,本想试着解出来,但是这个比那个牛吃草复杂多了。。。
·
2015-11-12 09:29
poj
POJ 3254 Corn Fields(
状态压缩
DP)
题目链接 看的这个博客,讲的很好,初学
状态压缩
,对位运算操作还不是很熟,有很多用法,然后就是这个题,开始想用队列优化一下,存上一层合法情况的下标的,老是RE不知为何。。
·
2015-11-12 09:28
Field
HDU 4407 Sum(容斥原理+
状态压缩
)
题目链接 容斥原理不会,map不会,
状态压缩
不会。做毛线。。。 题目大意:给出1-n,n个数,有两个操作1是询问x-y区间上与p互质的数的和是多少,2是改变x位置上的数为c。
·
2015-11-12 09:27
HDU
poj1185 炮兵阵地 经典
状态压缩
dp
这个题目和上一个种玉米的是一个类型,都是状态dp,用二进制位来表示当前的一个状态值,只不过比上一个稍微复杂了一点,需要用三维的数组来保存当前state。 题目:在一个N*M的矩阵上布置炮兵部队,只有平原可以布置,然后每个炮兵部队都有一个攻击范围,它能够攻击到的区域:沿横向左右各两格,沿纵向上下各两格。 问:如何部署炮兵部队,在防止误伤的前提下(保证任何两支炮兵部队之间不能互相攻击,即任何一支炮
·
2015-11-11 18:24
poj
状压DP POJ 3254 Corn Fields
题目传送门 1 /* 2
状态压缩
DP:先处理硬性条件即不能种植的,然后处理左右不相邻的, 3 接着就是相邻两行查询所有可行的种数并累加 4 5 写错一个地方差错N久
·
2015-11-11 18:48
Field
状压DP SGU 223 Little Kings
题目传送门 1 /* 2 题意:n*n的矩阵,放置k个king,要求king互相不能攻击,即一个king的8个方向都没有另外的king,求方案个数 3
状态压缩
DP:dp[
·
2015-11-11 18:47
it
状压DP POJ 2411 Mondriaan'sDream
3
状态压缩
DP第一道:dp[i][j] 代表第i行的j状态下的种数(状态即为二进制10101110101...的样子) 4 横着的定义为11,竖着的定义为01,当两行的状态已填满并且没有出现奇数个
·
2015-11-11 18:46
poj
状态压缩
dp/sgu 131 Hardwood floor
题意 给出一个n*m的格子,要求用1*2的块和2*2缺一角的块填满,求方案数 分析 状压dp,以下来自nocow:
状态压缩
DP,转移的时候情况很多,要一个个写出来理清楚再写。
·
2015-11-11 18:58
OO
HDU 3200 Arborescence Counting
简要分析: 根据点数很少这个条件, 我们自然想到搜索或者
状态压缩
动态规划, 而这两种做法都是正确的, 在这里我重点介绍第二种算法.
·
2015-11-11 17:01
count
poj 1185 炮兵阵地 三进制
状态压缩
,DFS,滚动数组
我们把 放置在 第 I 行的炮兵 称为 I 行炮兵, 通过观察我们可以得出, 第I行炮兵只受 I-1 行,I-2行的 放置情况影响. 对于第Y列,有三种情况: P[x] = 0, i-1 行 空 i-2 行 空 P[x] = 1, i-1 行 空, i-2 行放置了炮兵
·
2015-11-11 17:19
poj
三进制
状态压缩
DFS 滚动数组
把底边贴着第 x 行底边放置的芯片 称为第 x 行芯片。 由于芯片长度只有 3, 所以第 x 行芯片的放置只受 x-1行 和 x-2 行放置情况的影响。 同时由于一旦 方格 (x-1, y)被黑色记号或其他芯片 占据,则方格(x-2,y)即便空闲对第 x行芯片的放置也毫无意义。 所以,只需记录的状态只有: 一, a[x] = 0 表示方格(x-1,y)空
·
2015-11-11 17:17
integrate
poj 3254 Corn Fields
状态压缩
,位运算集合操作
状态 表示 前 i 行状态为 mask的 合法方案数量 状态转移方程为 其中 状态 j,k 满足条件 j & k = 0, j & ( j <<1) = 0, k & ( k <<1 ) = 0 ,且 J,K状态种植点合法 因为两层间种植的点, 不可以上下相邻
·
2015-11-11 17:17
Field
poj 2414 Phylogenetic Trees Inherited 完全二叉树
状态压缩
位运算模拟集合操作 动态规划
题目题意异常恶心,难以理解...... 呵呵.....不过题意是 Lyush大神 花费一小时看明白后透露给笔者的, 到现在依然YM此大婶当中...... 先说说题目大意: 一颗完全二叉树,有 N ( n <= 1024,且必定为2的整数幂,意味着是一颗完全二叉树 ) 个叶子节点, 每一个节点都含有一个长度为 L L ( L <
·
2015-11-11 17:07
Inherit
poj 2411 Mondriaan's Dream
状态压缩
DP 打表
将题目转换题意, 有一个M列的墙, 我们需要 使用 1*2 的小矩形 砌成N层高, 有多少不同的方案数量. 因为只有1*2的砖头, 且只有竖立或者横着放. 那么我们规定 竖立放置的砖头属于 较高的一层, 且 当前点放置砖头则为1,否则为0 那么我们可以得出结论: 对于 I 层 状态 X , 若当前位置为0,则下层必定为1. 则意味着下层必定包含 t = (~X)&
·
2015-11-11 17:06
poj
HDU 4771
pid=4771 给一个地图,@是起点,给一些物品坐标,问取完所有物品的最小步数,不能取完输出-1 物品数最多只有四个,
状态压缩
一下bfs即可 #include <iostream&
·
2015-11-11 17:15
HDU
HDU 3006
pid=3006 注意到集合内数字最大只有14,
状态压缩
一下,然后枚举出所有状态 #include <iostream> #include <cstdio> #include
·
2015-11-11 17:13
HDU
HDU 4568 Hunter 最短路+状压DP
解法:看到k的范围应该想到
状态压缩
,将每个格子都看成一个点,再新建两个点,一个表示边界外的起点,用0表示,一个表示边界外的
·
2015-11-11 16:33
HDU
csu 1536 Bit String Reordering(模拟 bfs+
状态压缩
)
http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1536 题意: 输入n个只为 0或1 的数 形成一个排列 再输入m个数 每个数代表 目标排列 (样例 1 0 0 1 0 1 1 3 2
·
2015-11-11 16:43
String
位运算简介及实用技巧(四):实战篇
代码写得并不好,我只是想告诉大家位运算在实战中的应用,包括了搜索和
状态压缩
DP方面的题目。其实大家可以在网上找到更多用位运算优化的题目,这里整理出一些自己写的代码,只是为了原创系列文章的完整性。
·
2015-11-11 15:07
位运算
POJ 2817 WordStack(
状态压缩
DP)
题目链接 以前的坑,以前做的时候,用暴力各种跪,其实是
状态压缩
DP。暴力处理出来后,状态+标记最后一个单词。
·
2015-11-11 15:36
stack
POJ 1185 炮兵阵地(
状态压缩
DP)
题目链接 写了久。DEBUG很久。 1 #include <iostream> 2 #include <cstring> 3 #include <cstdio> 4 #include <cstdlib> 5 #include <map> 6 #include <queue> 7 #
·
2015-11-11 15:35
poj
关于位运算。。。
状态压缩
。。。
·
2015-11-11 15:08
位运算
记录做过的各种DP
做DP,已经有一段时间了,虽然还有很多不会的,树形DP,数位DP,
状态压缩
DP。。。
·
2015-11-11 15:58
dp
hdu4310贪心
明明贪心是正确的嘛,不知道为什么官方的解题报告说是
状态压缩
DP。
·
2015-11-11 15:05
HDU
hdu 1565
状态压缩
DP
这题可以用最大流做,为了练DP就用
状态压缩
了。我一开始只想到一个O(n*2^n*2^n)的方法,效率太低,看了某大牛的解题报告后,才将算法优化到O(n^2*2^n)。
·
2015-11-11 15:44
HDU
codeforces 16E Fish(
状态压缩
概率DP)
题目链接:http://codeforces.com/problemset/problem/16/E 题意:n个人比赛,Pij表示i打败j的概率。每次两个人随机相遇。求每个人鏖战到最后的概率。 思路:f[i]表示状态为i的人留下的概率。那么i中每两个之间对决干掉其中一个,以此进行转移。 import java.util.*; import java.text.*; import jav
·
2015-11-11 14:44
codeforces
HDU Collect More Jewels 1044
BFS +
状态压缩
险过 这个并不是最好的算法 但是写起来比较简单 , 可以AC,但是耗时比较多 下面是代码 就不多说了 #include <cstdio> #
·
2015-11-11 13:42
more
状态压缩
DP-棋盘模型总结
论文:《周伟ftfish --- 动态规划之
状态压缩
》 关键之处在于: ①针对棋盘不同限制用dfs把每行可行的
状态压缩
表示成一个数存到s[]。
·
2015-11-11 12:31
总结
状态压缩
DP-棋盘模型总结
论文:《周伟ftfish --- 动态规划之
状态压缩
》 关键之处在于: ①针对棋盘不同限制用dfs把每行可行的
状态压缩
表示成一个数存到s[]。
·
2015-11-11 12:30
总结
SGU132 - Another Chocolate Maniac(
状态压缩
DP)
题目大意 给定一个N*M大小的大小的蛋糕,蛋糕的有些地方已经放置了东西,要求你在蛋糕上放入尽量少的1*2大小的巧克力,使得蛋糕不能够再放入巧克力 题解 和POJ1038恰好相反,此题是放入尽量少的巧克力,根据前两行的状态来进行当前行的放置,用dfs来进行三行的状态枚举,并同时检查放置是否合法,放完m列之后就可以进行状态转移了 代码: #include <iostream> #
·
2015-11-11 12:44
man
(
状态压缩
DP)
题解 妈蛋,这道题折腾了好久,黑书上的讲解看了好几遍才稍微有点眉目(智商捉急),接着看了网上大牛的解题报告和实现代码才弄明白怎么用三进制来进行
状态压缩
,关键就是理解能够横着放置和竖着放置的条件。
·
2015-11-11 12:43
integrate
POJ1185 - 炮兵阵地(
状态压缩
DP)
题目大意 中文的。。直接搬过来。。。 司令部的将军们打算在N*M的网格地图上部署他们的炮兵部队。一个N*M的地图由N行M列组成,地图的每一格可能是山地(用"H" 表示),也可能是平原(用"P"表示),如下图。在每一格平原地形上最多可以布置一支炮兵部队(山地上不能够部署炮兵部队);一支炮兵部队在地图上的攻击范围如图中黑色区域所示: 如果在地图中的
·
2015-11-11 12:42
poj
SGU131 - Hardwood floor(
状态压缩
DP)
POJ2411的影响,怎么都没想到3,4,5,6这几种情况该怎么放置,看了网上大牛的解题报告和代码(真是不好的习惯,可是太弱了就是想不出咋办%>_<%)之后豁然开朗~~~~ 规模比较小,所以用
状态压缩
·
2015-11-11 12:41
OO
SGU223 - Little Kings(
状态压缩
DP)
题目大意 给定一个N*N(n<=10,k<=n*n)大小的棋盘,要求你在棋盘上放置k个国王,使得不会相互攻击,如果棋盘上某个格子放置了一个国王,那么与他相邻的八个格子都是他的攻击范围,问有多少种放置方案 题解 和炮兵阵地差不多,只不过这个题是统计方案,依然是逐行转移,如果某个格子(i,j)放置了国王,那么上一行j,j-1,j+1,这三个格子都是他的攻击范围,因此这三个格子是不能够放
·
2015-11-11 12:41
it
POJ2411 - Mondriaan's Dream(
状态压缩
DP)
题目大意 给定一个N*M大小的地板,要求你用1*2大小的砖块把地板铺满,问你有多少种方案? 题解 刚开始时看的是挑战程序设计竞赛上的关于铺砖块问题的讲解,研究一两天楞是没明白它代码是怎么写的,智商捉急,上面是用逐格进行转移的,据说神马插头DP。。。坑爹啊。。。然后果断放弃研究了。。。我们还是逐行的进行转移,这样比较好理解,方程表示为:dp[i][j]+=dp[i-1][k](能够从上一行的状态
·
2015-11-11 12:40
poj
POJ3254 - Corn Fields(
状态压缩
DP)
(不种一算一种方案) 题解 很基础的
状态压缩
DP,我们可以逐行的进行状态转移,用二进制来表示一行的状态,方程表示为:dp[i]j]+=dp[i-1][k],表明我们可以
·
2015-11-11 12:39
Field
2013-5-6 训练赛总结
解法:
状态压缩
, 第一行状态确定后,则所有行都确定. 然后枚举第一行状态,取个最小值即可. View Code #in
·
2015-11-11 11:49
总结
HDU 5025
选拔赛(2)简单的
状态压缩
+bfs 屌洋直接用8维数组过的...代码美的一逼 题意: 悟空(K)找唐僧(T),只能上下左右四个方向走,每步花费一个时间,碰到蛇精(S)需要额外花费一个时间去消灭
·
2015-11-11 11:08
HDU
上一页
23
24
25
26
27
28
29
30
下一页
按字母分类:
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
其他