花费 277ms 找到1457747条记录
1 zoj3545Rescue the Rabbit (AC自动机+dp+滚动数组
2016年02月13 - a negative W. 题意:给你n个模板串,每一个模板串对应一个数值,有正也有负,然你构造一个长度为m的模板串,使得模板串的价值最大,且一种模板串如果重复出现只统计一次。 思路:考虑到n<=10,所以用dp的思想,设状态为dp[i][j][state]表示走了i步,当前节点为j,含有
2 ZOJ 3545 Rescue the RabbitAC自动机+DP)(The 2011 ACM
2014年09月04 - , or there are no rabbits any more.A rabbit's genes can be expressed as a string whose length is l (1 ≤ l ≤ 100) containing only 'A', 'G', 'T', 'C'. There is no doubt
3 ZOJ3545---Rescue the Rabbit(AC自动机+dp)
2015年04月20 - ACM-ICPC Asia Dalian Regional Contest 还是很简单的一题dp, dp[i][j][k]表示长度为i,在节点j,状态为k的可行性,然后建立自动机转移就行,数组开不下,所以要用滚动数组,但是记得用滚动数组时,上次用的不能干扰到这次
4 ZOJ 3545 Rescue the Rabbit AC自动机 + DP (2011大连区域赛G题)
2015年05月14 - 题目大意: 就是现在给出n个字符串(n <= 10), 只包含ACGT字符, 当其中第个串出现的时候会带来权值w[i], 然后现在要写一个长度为m的串, 问最大权值为多少 如果为负数就输出那个字符串 大致思路: 就是明显的AC自动机上的DP, 建立好AC自动机
5 HDU 4057 Rescue the RabbitAC自动机+DP
2015年09月24 - 想到的DP暴力转移。 dp[i][j][k]:表示长度为i的串,位于AC自动机上的节点j,模式串的状态(之后)为k的可否达到。这个复杂度为100∗1024∗1000=1×108100*1024*1000=1\times 10^8,题目给了10s,还是可以搞的,但是空间不够,只能用滚动数组了。先建立
6 hdu 4057--Rescue the Rabbit(AC自动机+DP)
2017年10月13 - 片段(用包含A、G、T、C的字符串表示),每个基因片段有一个权值,现在求长为L的基因的最大权值(每个基因片段重复出现算一次,不用计算多次)? 思路:AC自动机+状态压缩DPdp[i][j][s]表示长为 i 的基因且在AC自动机 tire树上匹配到节点 j 时
7 hdu 4057 Rescue the Rabbit(AC自动机+dp)
2017年07月28 - 考虑到i的长度,存在的串的组合为j,在AC自动机上走到了k这个节点的状态。 然后转移一下就能将所有能到达的状态走到。然后取一个最大值就行了。 1 #include<bits/stdc++.h> 2 #define mst(a,b) memset(a,b
8 hdu4057 Rescue the RabbitAC自动机+dp滚动数组
2016年03月16 - Password【ac自动机+dp状态压缩】而且4057更难在了dp数组不仅第三维是二进制表示的,而且第一维也是滚动数组压缩的,dp的推到依旧没变,注意将ATGC转化成ABCD因为next数组是挨着的啊@。@ 然后注意是%2!!每步都是!!还有就是分数的计算,想了半天怎么累加分数,还想预处理来着,dp转移
9 HDU 4057 Rescue the Rabbit (AC自动机+DP)
2014年11月14 - 自动机。我们在AC自动机上找到长度为l的可行方案,并求出最大值即可。用dp[i][j][k]表示字符串长度为i时,AC自动机上第j个结点是否可达状态k。因为模式串只有10种,所以最多有2^10个状态,一下就行了,然后就是长度为i的字符串只由第i-1个变过来,所以可以用滚动数组
10 HDU-4057 Rescue the RabbitAC自动机+DP
2016年11月03 - 4 4 No Rabbit after 2012! 题目大意:给n个字符串,每个都有权值,其他的字符串没有权值。构造一个长度为m的权值最大的字符串,输出最大权值。每个带权字符串只能计算一次。 题目分析:容易想到在AC自动机上动态规划。内存要求比较高,用下滚动数组

 
© 2014-2018 ITdaan.com 粤ICP备14056181号