序列自动机

简介: 序列自动机

这里母串赋值和算长度不要变,固定模板

int nt[100005][26];
char a[100005];
scanf("%s",a+1);
void init() {
  int len=strlen(a+1);
  for(int i=len; i>=1; i--) {
    for(int j=0; j<26; j++) {
      nt[i-1][j]=nt[i][j];
    }
    nt[i-1][a[i]-'a']=i;
  }
}

判断代码

char b[1005];
    scanf("%s",b);
    int len=strlen(b);
    int p=0,f=0;
    for(int i=0; i<len; i++) {
      p=nt[p][b[i]-'a'];
      if(p==0) {
        f=1;
        break;
      }
    }
    if(f) {
      cout<<"不是子序列"<<endl;
    } else {
      cout<<"是子序列"<<endl;
    }

例题

https://nanti.jisuanke.com/t/38232

#include<iostream>
#include<string.h>
using namespace std;
char a[100005];
int nt[100005][26];
void init() {
  int len=strlen(a+1);
  for(int i=len; i>=1; i--) {
    for(int j=0; j<26; j++) {
      nt[i-1][j]=nt[i][j];
    }
    nt[i-1][a[i]-'a']=i;
  }
}
int main() {
  scanf("%s",a+1);
  int t;
  scanf("%d",&t);
  init();
  while(t--) {
    char b[1005];
    scanf("%s",b);
    int len=strlen(b);
    int p=0,f=0;
    for(int i=0; i<len; i++) {
      p=nt[p][b[i]-'a'];
      if(p==0) {
        f=1;
        break;
      }
    }
    if(f) {
      cout<<"不是子序列"<<endl;
    } else {
      cout<<"是子序列"<<endl;
    }
  }
}
目录
相关文章
|
3天前
|
算法
【MATLAB】 SSA奇异谱分析信号分解算法
【MATLAB】 SSA奇异谱分析信号分解算法
88 0
|
12月前
|
机器学习/深度学习 传感器 算法
大M序列的产生和相关性质附matlab代码
大M序列的产生和相关性质附matlab代码
|
9月前
|
机器学习/深度学习 传感器 编解码
路径规划算法:基向量加权优化的机器人路径规划算法- 附matlab代码
路径规划算法:基向量加权优化的机器人路径规划算法- 附matlab代码
|
10月前
|
算法 机器人
基于改进PSO-ABC算法的机器人路径规划(Matlab代码实现)
基于改进PSO-ABC算法的机器人路径规划(Matlab代码实现)
|
10月前
|
机器学习/深度学习 传感器 算法
【元胞自动机】基于元胞自动机模拟森林救火问题附matlab代码
【元胞自动机】基于元胞自动机模拟森林救火问题附matlab代码
|
10月前
|
机器学习/深度学习 传感器 并行计算
【元胞自动机】基于元胞自动机实现传染病传播模拟附matlab代码
【元胞自动机】基于元胞自动机实现传染病传播模拟附matlab代码
|
11月前
|
机器学习/深度学习 传感器 算法
【元胞自动机】基于元胞自动机模拟气体交换碰撞附matlab代码
【元胞自动机】基于元胞自动机模拟气体交换碰撞附matlab代码
|
11月前
|
机器学习/深度学习 传感器 算法
【元胞自动机】基于元胞自动机模拟风速影响的森林火灾模型含Matlab代码
【元胞自动机】基于元胞自动机模拟风速影响的森林火灾模型含Matlab代码
|
机器学习/深度学习 传感器 算法
基于非线性最小二乘法 (NLLS) 分析寻找给定伪距数据的无人机轨迹附matlab代码
基于非线性最小二乘法 (NLLS) 分析寻找给定伪距数据的无人机轨迹附matlab代码
|
传感器 机器学习/深度学习 算法
【路径规划】基于模拟退火粒子群结合DWA实现机器人全局局部动态规划附matlab代码
【路径规划】基于模拟退火粒子群结合DWA实现机器人全局局部动态规划附matlab代码