博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
bzoj 1009 [HNOI2008]GT考试——kmp+矩阵优化dp
阅读量:7079 次
发布时间:2019-06-28

本文共 602 字,大约阅读时间需要 2 分钟。

题目:

首先想到 确保模式串不出现 就是 确保每个位置的后缀不是该模式串。

为了dp,需要记录第 i 个位置的后缀已经有几位和模式串的前几位吻合了。

所以想到可以转移到 j+1 或 0 。

但其实不一定是0,因为可能和前面的接上。这里就要用kmp了!

注意可以和很多位置接上的时候,应该和最长的那个接上,而不是和每个 nxt 都接上,也不是什么能选择的。

知道了当前 j 能转移到哪些 j ,就可以矩阵优化了。

#include
#include
#include
using namespace std;const int N=25;int n,m,mod,nxt[N],prn,ch[N];struct Matrix{ int a[N][N]; Matrix(){memset(a,0,sizeof a);} Matrix operator * (const Matrix &b)const { Matrix c; for(int i=0;i
>=1;} for(int i=0;i

 

转载于:https://www.cnblogs.com/Narh/p/9260150.html

你可能感兴趣的文章
压力测试工具收集
查看>>
AIX6.1 升级OpenSSH(摘自网络)
查看>>
CPU负载观察及调优方法
查看>>
PV与并发之间换算的算法换算公式
查看>>
二叉树
查看>>
利用SSL/TLS中的SNI同一ip不同域名的F5vs配置解决方案
查看>>
解决libmcrypt was not found,无法安装mcrypt
查看>>
with管理文件操作
查看>>
使用FeignClient调用远程服务时整合本地方法
查看>>
win基础
查看>>
通过安装tvOS描述文件阻止iOS自动更新
查看>>
根据列表选定主机并ssh登录
查看>>
RAC_Oracle集群服务安装RAC(案例)
查看>>
apache + tomcat
查看>>
VMware Horizon View 7: Setup Remote Access through Security Server [Part 5]
查看>>
后台线程的调用Thead
查看>>
缺少JRE导致的404错误
查看>>
RHEL6.5_KVM_VLAN_SET
查看>>
windows server 2012 支持重删的前提条件
查看>>
Tomcat启动脚本
查看>>