Heroes of Might and MagicTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 170Accepted Submission(s)...
分类:
其他好文 时间:
2014-11-26 22:15:24
阅读次数:
289
题目链接:BZOJ 1072这道题使用 C++ STL 的 next_permutation() 函数直接暴力就可以AC 。(使用 Set 判断是否重复)代码如下:#include #include #include #include #include #include #include using...
分类:
其他好文 时间:
2014-11-26 15:47:42
阅读次数:
234
题意:
n*m(10^5*10)的棋盘 每个格子有个箭头表示行走方向 有q(10^5)个操作 更改操作即改变某个位置的箭头 更改最多10^4次 查询操作即询问从(x,y)位置开始走最后走到哪 或者 死循环
思路:
我们发现n大m小 联想到可能3进制状压什么的 如果不更新明显dp一下就好 更新少 联想到分块搞
因为分块有个很好的性质 “走出这一块,就不归我这一块管了”...
分类:
其他好文 时间:
2014-11-26 14:26:56
阅读次数:
205
解题思路:
简单的状压DP,1表示放炮,预处理出每一行所有两个1间隔不小于2的状态,每一行的状态只和上面两行有关,因此可以枚举这三行的状态,用DP[i][j][k]表示第i行状态为k,第i-1行状态为j的数目,转移方程为dp[i][j][k] = max(dp[i][j][k], dp[i-1][l][j] +count(k));
#include
#include
#includ...
分类:
其他好文 时间:
2014-11-21 20:34:47
阅读次数:
248
题目大意:一个国王可以攻击到旁边8个位置的格子,现在给出一个N*N的方格,向其中放k个国王,问有多少中摆放方法。
思路:状压DP,f[i][j][k],其中i是行数,j是状态,k是已经取了多少国王。然后暴力枚举状态,看相邻两行之间有没有冲突,若没有冲突,那么就转移。
注意要开long long
CODE:
#include
#include
#include
#...
分类:
其他好文 时间:
2014-11-21 18:53:36
阅读次数:
161
没什么可说的,入门级状压DP,直接撸掉
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define LL long long
#define FOR(i, x, y) for(int i=x;i<=y;i++)
using...
分类:
其他好文 时间:
2014-11-20 20:29:07
阅读次数:
276
http://www.lydsy.com/JudgeOnline/problem.php?id=1072首先无限膜拜题解orz表示只会暴力orz数据那么小我竟然想不到状压!orz这种题可以取模设状态orzf[i,j]表示状态为i,mod d为j的方案则答案为f[all, 0]转移就太简单了orzf[...
分类:
其他好文 时间:
2014-11-20 15:15:59
阅读次数:
274
题意:
给出m个模式串,要求构造一长度为n的文本串,至少包括k种模式串,求有多少种可能的模式串。
分析:
m个模式串构建AC自动机,然后要在这AC自动机中走n步,至少经过k个单词结点。因为m<=10,显然可以用状压表示已经有哪几个单词结点。用dp[i][j][k]表示走了i步到AC自动机中的第j个结点,单词状态为k,由计数原理可推出状态转移方程:dp[i][j][k]=sum(dp[i-1][last_j][last_k]),last_j表示可以抵达第j个结点的上一个结点,last_k表示上一步的状态;因为...
分类:
其他好文 时间:
2014-11-20 12:01:10
阅读次数:
242
2734: [HNOI2012]集合选数Time Limit:10 SecMemory Limit:128 MBSubmit:560Solved:321[Submit][Status]Description《集合论与图论》这门课程有一道作业题,要求同学们求出{1, 2, 3, 4, 5}的所有满足以...
分类:
其他好文 时间:
2014-11-20 11:36:50
阅读次数:
164