HDU 1711 Number Sequence(KMP模板)

?

http://acm.hdu.edu.cn/showproblem.php?pid=1711

這道題就是一個KMP模板。

 1 #include<iostream> 
 2 #include<cstring>
 3 using namespace std;
 4 
 5 const int maxn = 1000000+5;
 6 
 7 int n,m;
 8 
 9 int next[maxn];
10 int a[maxn], b[maxn];
11 
12 void get_next()
13 {
14     int i = -1, j = 0;
15     ::next[0] = -1;
16     while (j < m)
17     {
18         if (i == -1 || b[i] == b[j])
19             ::next[++j] = ++i;
20         else
21             i = ::next[i];
22     }
23 }
24 
25 
26 int kmp()
27 {
28     int i = 0, j = 0;
29     while (i < n)
30     {
31         if (j == -1 || a[i] == b[j])
32         {
33             i++;
34             j++;
35         }
36         else
37             j = ::next[j];
38         if (j == m)
39             return i;
40     }
41     return -1;
42 }
43 
44 int main()
45 {
46     //freopen("D:\\txt.txt", "r", stdin);
47     int t;
48     cin >> t;
49     while (t--)
50     {
51         cin >> n >> m;
52         for (int i = 0; i < n; i++)
53             cin >> a[i];
54         for (int i = 0; i < m; i++)
55             cin >> b[i];
56         get_next();
57         int k=kmp();
58         if (k!=-1)  cout << k-m+1 << endl;
59         else cout << "-1" << endl;
60     }
61     return 0;
62 }

?

轉載于:https://www.cnblogs.com/zyb993963526/p/6358003.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/456484.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/456484.shtml
英文地址,請注明出處:http://en.pswp.cn/news/456484.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Redis數據庫學習筆記

一、NoSql&#xff08;非關系型數據庫&#xff09; NoSQL&#xff1a;NoSQL Not Only SQL 非關系型數據庫 ? NoSQL&#xff0c;泛指非關系型的數據庫。隨著互聯網web2.0網站的興起&#xff0c;傳統的關系數據庫在應付web2.0網站&#xff0c;特別是超大規模和高并發的SNS類型…

Sqoop的安裝配置及工作機制

文章目錄[toc] 目錄&#xff1a;1、簡介2、sqoop安裝2.1、下載并解壓2.2、修改配置文件2.3、加入mysql或oracle的jdbc驅動包2.4、驗證啟動3、Sqoop的原理3.1、代碼定制目錄&#xff1a; 1、簡介 sqoop是apache旗下一款“Hadoop和關系數據庫服務器之間傳送數據”的工具。 導入…

3D打印技術在醫療領域能做些什么?幫助精確完成手術

3D打印技術出現在20世紀90年代中期。它與普通打印工作原理基本相同&#xff0c;打印機內裝有液體或粉末等“打印材料”&#xff0c;與電腦連接后&#xff0c;通過電腦控制把“打印材料”一層層疊加起來&#xff0c;最終把計算機上的藍圖變成實物。這打印技術稱為3D立體打印技術…

【一些簡單的jQuery選擇器】

學習【js DOM 編程藝術】&#xff0c;最后面有許多jQuery的選擇器&#xff0c;每個都動手敲了一遍。 jQuery 提供了高級選擇器的方法。 js獲取元素的三個基本方法分別是通過標簽名&#xff0c;類名和id&#xff0c;即(getElementsByTagName, getElementsByClassName和getElemen…

pymysql操作mysql數據庫

一、pymysql操作mysql數據庫 安裝pymysql pip install pymysql 1.1 pymysql操作數據庫的五行拳 連接數據庫 使用Connect方法連接數據庫 pymysql.Connections.Connection(hostNone, userNone, password, databaseNone, port0, charset) 參數說明&#xff1a;host – 數據庫服務…

SecureCRT常用的使用技巧

文章目錄前言&#xff1a;1、SecureCRT 超時自動斷開連接的解決辦法2、SecureCRT連接Linux時&#xff0c;終端顯示亂碼的問題。3、SecureCRT使用自動記錄日志功能4、使用SecureCRT從Windows上傳文件到Linux5、SecureCRT配色推薦和永久設置前言&#xff1a; 由于工作需要&#…

解決:(1062, Duplicate entry '2019-08-30' for key 'rdate')

解決(1062, "Duplicate entry 2019-08-30 for key rdate") 顯然這個問題是因為插入重復主鍵導致從庫不工作了&#xff0c;更改庫的唯一限制&#xff1a; unique 為normal 或者刪除unique ALTER TABLE 表明 DROP INDEX 字節名; 實例 CREATE TABLE good_booked (au…

人民幣數字金額轉大寫金額

public class t {public static String Trans2RMB(String money) {int index money.indexOf(".");if (index < 0) {// 沒有角分money money ".00";index money.indexOf(".");}if (money.substring(index, money.length()).length() < …

eventBus 與fragment

同一個eventbut是不可以注冊兩次的&#xff0c;所以我們會在ondestroy方法中進行unregister&#xff08;&#xff09; 但是在fragment中&#xff0c;最好把unregister&#xff08;&#xff09;方法寫到 onDestroyView&#xff08;&#xff09;方法中而不是onDestrory&#xff0…

機器學習之線性代數總結

目錄1、SVD是什么、表達式是什么及對應的數學含義&#xff1b;2、了解方陣、行列式的含義&#xff08;方陣即矩陣&#xff0c;行列式即矩陣的計算結果&#xff09;3、了解代數余子式的概念4、伴隨矩陣的概念5、知道方陣的逆的公式、范德蒙行列式6、知道矩陣的乘法&#xff0c;掌…

Python操作MongoDB

一 安裝 pymongo pip install pymongo3.4 ? 導入 MongoClient from pymongo import MongoClient 二 連接MongoDB數據庫 MongoDB端口號:27017 連接MongoDB我們需要使用PyMongo庫里面的MongoClient&#xff0c;一般來說傳入MongoDB的IP及端口即可&#xff0c;第一個參數為地…

各種插件

上下滾動抽獎效果, 移動端省級聯動, 時間聯動 , pc端省級聯動 vue 支持各種方式上傳 一個不太完善的拖拽排序 react 拖拽交換插件 各種小插件 壓縮圖片移動端 h5上傳 h5分片上傳 包括服務器 slideSuper 各種滑動效果 wow.js 轉載于:https://www.cnblogs.com/dhsz/p/6377956.h…

MailBee.NET Objects發送電子郵件(SMTP)教程六:創建并發送帶有附件的郵件

2019獨角獸企業重金招聘Python工程師標準>>> MailBee.NET Objects是一款為創建、發送、接收以及處理電子郵件而設計的健壯、功能豐富的.NET控件。幾行代碼便可為應用程序添加E-Mail支持&#xff0c;簡單高效。具備“必需”以及獨特的功能&#xff0c;這些控件幫助開…

機器學習之凸優化原理推導及相關知識總結

文章目錄目錄1、了解凸集和仿射集的基本概念。2、知道幾何體的向量表達。3、了解超平面和半空間的概念。4、了解分割超平面和支撐超平面的含義。5、知道jensen不等式。6、掌握知識&#xff1a;凸函數。7、掌握凸優化目錄 1、了解凸集和仿射集的基本概念。 凸集&#xff1a;在…

jQuery BreakingNews 間歇滾動

BreakingNews 是一款基于jQuery的間歇滾動插件。它可以設置標題、標題顏色、標題背景顏色、鏈接顏色、字體大小、邊框、寬度、自動滾動、間歇時間等等&#xff0c;同時它還好提供兩種過度方式——淡入淡出&#xff08;fade&#xff09;和向上滑動&#xff08;slide&#xff09;…

機器學習之回歸總結

目錄1、了解線性回歸2、了解似然函數3、了解交叉驗證的原理4、梯度下降算法4.1、批量梯度下降算法&#xff08;Batch Gradient Descent&#xff0c;簡稱BGD&#xff09;&#xff1a;4.2、隨機梯度下降算法&#xff08;SGD&#xff09;&#xff1a;4.3、折中&#xff1a; 5、了解…

html中的url、href、src的區別

url不是屬性&#xff0c;src和href是屬性&#xff0c;src用于替換當前元素&#xff0c;href用于在當前文檔和引用資源之間確立聯系&#xff0c;也就是說src引用的路徑是img自己的路徑&#xff0c;href引用的路徑是要跳轉到的地方。 URL&#xff1a;Uniform Resource Locators&…

SSIS 包部署錯誤 0xC0010014

SSIS 包部署錯誤 0xC0010014 Reinhard 在部署 SSIS 包時&#xff0c;提示如下錯誤。 由于錯誤 0xC0010014“發生了一個或多個錯誤。在此消息之前應有更為具體的錯誤消息&#xff0c;對這些錯誤進行詳細說明。此消息用作遇到錯誤的函數的返回值。”&#xff0c;無法加載包。當 C…

Android性能優化-App后臺優化

原文鏈接 Background Optimizations 前言 后臺進程是內存和電池敏感的。一個隱式的broadcast可能會啟動很多監聽它的后臺進程&#xff0c;即使這些進程可能做得工作不多。這可能丟設備性能和用戶體驗都有比較大的影響。 為了緩解這種問題&#xff0c;7.0&#xff08;API 24&…

機器學習之決策樹與隨機森林

目錄1、了解熵、條件熵、互信息的概念及公式1.1、熵1.2、條件熵1.3、信息增益/互信息 2、了解決策樹2.1、了解決策樹的概念和特點以及和熵的關系2.2、了解樹生成的過程2.3、了解決策樹三種算法的區別2.4、了解決策樹的損失函數2.5、了解解決決策樹過擬合的方法2.6、了解后剪枝的…