HDU - 1711 - Number Sequence (KMP)
来源:互联网 发布:手机淘宝店铺秒杀技巧 编辑:程序博客网 时间:2024/06/14 13:58
题目链接:
http://acm.hdu.edu.cn/showproblem.php?pid=1711
题解:
用普通的kmp踩点过了。。。
AC代码:
#include <iostream>#include <cstring>using namespace std;int nxt[10000];int m , n;int p[10500];int t[1000001];void getnext(){ nxt[0] = -1; int i = 0, j = -1; while(i < m) { while(j >= 0 && p[i] != p[j]) { j = nxt[j]; } j += 1; i+= 1; if(p[i] == p[j]) { nxt[i] = nxt[j]; } else { nxt[i] = j; } }}int kmp(){ int i = 0, j = 0; while(i < n) { while(j >= 0 && t[i] != p[j]) { j = nxt[j]; } i += 1; j += 1; if(j == m) { j = nxt[m]; return i - m; } } return -1;}int main(){ int tt ; cin >> tt; while(tt--) { cin >> n >> m; for(int i = 0; i < n; i++) cin >> t[i]; for(int j = 0; j < m; j++) cin >> p[j]; getnext(); int ans = kmp(); if(ans != -1) cout << ans + 1 <<endl; else cout << -1 <<endl; } return 0;}
0 0
- HDU 1711 Number Sequence(kmp)
- HDU 1711 Number Sequence (kmp)
- hdu 1711 Number Sequence--KMP
- hdu kmp 1711 Number Sequence
- HDU 1711 Number Sequence (KMP)
- HDU 1711Number Sequence(KMP)
- Hdu 1711 KMP Number Sequence
- HDU 1711 Number Sequence KMP
- [HDU 1711]Number Sequence[kmp]
- 【KMP】hdu 1711 Number Sequence
- HDU 1711 Number Sequence(KMP)
- hdu 1711 Number Sequence(KMP)
- 【HDU】1711 Number Sequence KMP
- HDU 1711 Number Sequence (KMP)
- hdu 1711 Number Sequence(KMP)
- KMP & hdu 1711 Number Sequence
- hdu 1711 Number Sequence(kmp)
- hdu 1711 Number Sequence(kmp)
- Struts2的拦截器interceptor
- 理解java回调机制
- 正则表达式
- 设计模式学习笔记之策略模式
- 无bug的ajaxfileupload.js
- HDU - 1711 - Number Sequence (KMP)
- POJ2456
- 【9202】车厢重组
- React组件的生命周期
- 代码审计之SpringMVC框架的安全攻防问题研究
- mysql 日期操作 增减天数、时间转换、时间戳
- 打印蛇形矩阵
- 【旧代码整理】uri路由处理部分
- 面试题汇总