题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1711

题目大意:在母链中找到子链的位置,输出开始的位置。

 1 #include <iostream>
 2 #include <cstdio>
 3 using namespace std;
 4 int lens,lenc,next[1000005],str[1000005],ch[1000005];
 5
 6 int get_next()
 7 {
 8     int i=0,j=-1;
 9     next[0]=-1;
10     while (i<lens)
11     {
12         if (j==-1||str[i]==str[j])
13         {
14             i++;
15             j++;
16             next[i]=j;
17         }
18         else
19             j=next[j];
20     }
21 }
22
23 int kmp()
24 {
25     int i=0,j=0;
26     get_next();
27     while (i<lenc)
28     {
29         if(j==-1||str[j]==ch[i])
30         {
31             i++;
32             j++;
33         }
34         else
35             j=next[j];
36         if (j==lens)
37             return i-j+1;
38
39     }
40     return -1;
41 }
42
43 int main ()
44 {
45     int t;
46     scanf("%d",&t);
47     while (t--)
48     {
49         //int n,m;
50         scanf("%d%d",&lenc,&lens);
51         for (int i=0; i<lenc; i++)
52             scanf("%d",&ch[i]);
53         for (int j=0; j<lens; j++)
54             scanf("%d",&str[j]);
55         printf ("%d\n",kmp());
56     }
57     return 0;
58 }

转载于:https://www.cnblogs.com/qq-star/p/3890560.html

hdu 1711 Number Sequence相关推荐

  1. HDU 1711 Number Sequence(KMP算法)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1711 Number Sequence Time Limit: 10000/5000 MS (Java/ ...

  2. HDU 1711 -Number Sequence(KMP)

    题目 Number Sequence Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Othe ...

  3. HDU 1711 Number Sequence(KMP模板)

    http://acm.hdu.edu.cn/showproblem.php?pid=1711 这道题就是一个KMP模板. 1 #include<iostream> 2 #include&l ...

  4. HDU 1711 Number Sequence(算法验证)

    该怎么做.每一个人的人生都应该自己掌握.你给不了别人一切.你也不懂别人的忧伤. 微笑不代表快乐.哭泣不一定悲伤 不努力怎么让关心你的人幸福.不努力怎么让看不起你的人绝望. 我用生命在奋斗--lx_Zz ...

  5. HDU 1005 Number Sequence

    [题目]                                                   Number Sequence Time Limit: 2000/1000 MS (Jav ...

  6. HDU.1005 Number Sequence

    原题 HDU.1005 Number Sequence 分类 杂题 题意 给定一个数列{an}\left\{ a_n \right\}{an​}的前两项a1a_1a1​.a2a_2a2​,以及其递推公 ...

  7. 杭电 1711 Number Sequence 1686 2203

    找一串字符中完全匹配的起始位置,利用KMP模版: 代码: View Code 1 #include<iostream> 2 using namespace std; 3 int p[100 ...

  8. HDU 1005 — Number Sequence

    原题:http://acm.hdu.edu.cn/showproblem.php?pid=1005 思路: 找规律: 当出现两个1 时即找到了循环点:因为f[n]和f[n-1].f[n-2]有关,所以 ...

  9. HDU - 1005 Number Sequence(循环群)

    题目链接:点击查看 题目大意:给出递推公式以及模,求第n项 题目分析:这种裸的公式题,如果直接模拟实现,肯定不是超时就是爆内存,我们通过观察可以发现,无论a与b取何值,f[i]与f[i-1] 的关系始 ...

最新文章

  1. jquery-1.4.4.min.js无法解析json中result.data问题
  2. 数据结构 如何删除单向链表的倒数第m个元素
  3. 贪心算法-跳跃游戏——b
  4. python中的diff_python-Numpy和diff()
  5. python:array,mat,tolist,list
  6. java的indexof怎么配合数组使用_【小知识点??】indexOf在数组中竟能这样使用???!...
  7. html 中的frameset标签
  8. 洛谷 2719 搞笑世界杯
  9. Java-命令行传递参数
  10. Linux进程管理:进程和线程基础知识
  11. Salesforce.com + AutoCAD WS集成研究集锦
  12. Set Mismatch leetcode 645
  13. java的gui的design模式怎么打开_手机越用越卡怎么办?打开这五个隐藏按钮,1分钟解决卡顿问题...
  14. worldwind java 教程,如何脱机使用World Wind Java SDK
  15. 热腾腾的鸡汤,趁热。
  16. linux 安卓 挂pt,如何挂PT: Ubuntu / CentOS 7安装Deluge
  17. 假如你在泰坦尼克号上 你能活下来吗?——kaggle比赛泰坦尼克号数据集基于决策树
  18. mac 升级java_mac版java更新升级方法
  19. 光滑曲线_极简微积分——函数的曲线的描绘
  20. 我从外包公司离职了(一定要看 防坑指南)!

热门文章

  1. 生存分析——泊松回归(LightGBM)实现生存分析(四)
  2. 【JZOJ6227】【20190621】ichi
  3. Module build failed: TypeError: Cannot read property 'vue' of undefined
  4. 如何快速入手 Shell 脚本编程
  5. 问题007:JDK版本与JRE版本不同导致java.exe执行类文件错误 java.lang.UnsupportedClassVersionError错误...
  6. R语言编程艺术(4)R对数据、文件、字符串以及图形的处理
  7. 【转】三星8552 手机提示升级系统 完成后重启 开机画面一直停留在三星的LOGO 一闪一闪 怎么办...
  8. JointJS绘制流程图
  9. \045在字符串中输出为%
  10. django创建博客