首页 > 移动平台 > 详细

月月查华华的手机(序列自动机)

时间:2020-02-16 17:27:56      阅读:56      评论:0      收藏:0      [点我收藏+]

月月查华华的手机(序列自动机)

技术分享图片

 

 技术分享图片

 

 

AC_Code

 1 #include <bits/stdc++.h>
 2 using namespace std;
 3 typedef long long ll;
 4 const int maxn = 1e6+10;
 5 const int inf=0x3f3f3f3f;
 6 #define rep(i,first,last) for(int i=first;i<=last;i++)
 7 #define dep(i,first,last) for(int i=first;i>=last;i--)
 8 int nxt[maxn][30];
 9 int now[30];
10 char s[maxn];
11 
12 void init(){
13     memset(now,-1,sizeof(now));
14     int len=strlen(s);
15     dep(i,len-1,0){
16         rep(j,0,25){
17             nxt[i][j]=now[j];
18         }
19         now[s[i]-a]=i;
20     }
21 }
22 
23 char ss[maxn];
24 int main()
25 {
26     scanf("%s",s);
27     int n;
28     scanf("%d",&n);
29     init();
30     while( n-- ){
31         scanf("%s",ss);
32         int loc=now[ss[0]-a];
33         if( !~loc ) printf("No\n");//if(loc==-1)
34         else{
35             bool flag=true;
36             int len=strlen(ss);
37             rep(i,1,len-1){
38                 loc=nxt[loc][ss[i]-a];
39                 if( !~loc ){
40                     flag=false;
41                     break;
42                 }
43             }
44             if( flag ) printf("Yes\n");
45             else printf("No\n");
46         }
47     }
48     return 0;
49 }

 

月月查华华的手机(序列自动机)

原文:https://www.cnblogs.com/wsy107316/p/12317496.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!