青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

ACM___________________________

______________白白の屋
posts - 182, comments - 102, trackbacks - 0, articles - 0
<2010年10月>
262728293012
3456789
10111213141516
17181920212223
24252627282930
31123456

常用鏈接

留言簿(24)

隨筆分類(332)

隨筆檔案(182)

FRIENDS

搜索

積分與排名

最新隨筆

最新評論

閱讀排行榜

評論排行榜

HDU 1711 HDOJ 1711 Number Sequence ACM 1711 IN HDU

Posted on 2010-10-05 14:17 MiYu 閱讀(790) 評論(0)  編輯 收藏 引用 所屬分類: ACM ( 串 )
MiYu原創, 轉帖請注明 : 轉載自 ______________白白の屋    

 

 

 

題目地址 :

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

題目描述:

代碼
Number Sequence

Time Limit: 
10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 
1926    Accepted Submission(s): 819


Problem Description
Given two sequences of numbers : a[
1], a[2], ...... , a[N], and b[1], b[2], ...... , b[M] (1 <= M <= 100001 <= N <= 1000000). Your task is to find a number K which make a[K] = b[1], a[K + 1= b[2], ...... , a[K + M - 1= b[M]. If there are more than one K exist, output the smallest one.
 

Input
The first line of input 
is a number T which indicate the number of cases. Each case contains three lines. The first line is two numbers N and M (1 <= M <= 100001 <= N <= 1000000). The second line contains N integers which indicate a[1], a[2], ...... , a[N]. The third line contains M integers which indicate b[1], b[2], ...... , b[M]. All integers are in the range of [-10000001000000].
 

Output
For each test 
case, you should output one line which only contain K described above. If no such K exists, output -1 instead.
 

Sample Input
2
13 5
1 2 1 2 3 1 2 3 1 3 2 1 2
1 2 3 1 3
13 5
1 2 1 2 3 1 2 3 1 3 2 1 2
1 2 3 2 1
 

Sample Output
6
-1
 

 

 代碼

題目分析 :
   很久以前做的一個題目,  純粹的套模板了..... 到現在還是沒明白 KMP 到底怎么回事, 也可能是我沒花時間去仔細的看的原因.

今天上郵箱發現一個星期前一位網友問我的1711代碼速度為什么那么快, 著到代碼一看, 原來是個 簡單的KMP 裸題, 直接模板就行了,

速度的話這里有個小技巧, 知道的人就不要笑話我了.  

其實關鍵就是 對輸入數據的 加速
!!!!
一般對數據的輸入都是 
%d 或 %%lf 對吧?  其實計算機讀取的數據是字符形的, 它也需要調用其他的函數將這個串轉換成
數字,  所以你只要 用字符串讀入 數據,  然后自己寫個函數 把 這個字符串轉換成 數字久行了.

其實呢, 很多題目都可以只要來加速的, 除非它的數據量不大.


下面是我的代碼 : 


#include 
<iostream>
using namespace std;
const int MAXN=1000000;
const int MAXM=10000;

int nn[MAXN+1],mm[MAXM+1];
int Fail[MAXM+1];

void GetFail(int num[],int m){
        Fail[
0]=-1;
        
for(int i=1,j=-1;i<m;i++){
                
while(j>=0&&num[j+1]!=num[i]){
                        j
=Fail[j];
                }
                
if(num[j+1]==num[i])j ++;
                Fail[i]
=j;
        }
}
int KMP(int numA[],int numB[],int n,int m){
        GetFail ( numB,m );    
        
for (int i=0,j=0;i<n;i++){
                
while(j&&numB[j]!=numA[i]){
                        j
=Fail[j-1]+1;
                }
                
if(numB[j]==numA[i]) j++;
                
if(j == m) return i-m+2;
        }
        
return -1;
}
inline 
bool scan_d(int &num)  //  這個就是 加速的 關鍵了 
{
        
char in;bool IsN=false;
        
in=getchar();
        
if(in==EOF) return false;
        
while(in!='-'&&(in<'0'||in>'9')) in=getchar();
        
if(in=='-'){ IsN=true;num=0;}
        
else num=in-'0';
        
while(in=getchar(),in>='0'&&in<='9'){
                num
*=10,num+=in-'0';
        }
        
if(IsN) num=-num;
        
return true;
}
int main ()
{
    
int N,M,T;
    
while ( scan_d(T) )
    {
           
while ( T -- )
           {
                  scan_d(N),scan_d(M);
                  
for ( int i = 0; i != N; ++ i )
                      scan_d ( nn[i] );
                  
for ( int j = 0; j != M; ++ j )
                      scan_d ( mm[j] );    
                  printf ( 
"%d\n",KMP ( nn,mm,N,M ) );  
           }
    }
    
return 0;
}
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            香蕉成人伊视频在线观看| 久久精彩免费视频| 欧美午夜不卡在线观看免费| 久久综合中文字幕| 欧美成人激情视频免费观看| 欧美激情精品久久久久久大尺度 | 欧美精品久久99久久在免费线| 欧美成人精品福利| 欧美日韩午夜激情| 国产精品午夜在线| 伊人一区二区三区久久精品| 亚洲国产精品免费| 在线一区亚洲| 久久久久综合网| 亚洲国产视频一区二区| 亚洲精品视频在线观看网站| 亚洲欧美日韩电影| 欧美成人午夜激情| 国产精品爽爽ⅴa在线观看| 国产最新精品精品你懂的| 亚洲激情偷拍| 亚洲一二三四区| 99re热精品| 久久国产精品久久w女人spa| 欧美国产日韩亚洲一区| 一区二区三区国产精华| 久久亚洲私人国产精品va媚药| 欧美三级黄美女| 在线欧美视频| 久久久久se| 亚洲欧美国产高清| 欧美巨乳在线观看| 亚洲第一伊人| 久久久久综合一区二区三区| 一区二区三区波多野结衣在线观看| 久久久久久久精| 国产精品视频你懂的| 一本大道久久精品懂色aⅴ| 久久综合久久综合这里只有精品 | 亚洲日本成人在线观看| 久久国产日韩| 国产精品一区二区你懂的| 亚洲最快最全在线视频| 欧美激情国产日韩精品一区18| 欧美一区二区三区视频在线| 国产精品国产福利国产秒拍| 99re成人精品视频| 久久综合色综合88| 性欧美1819性猛交| 国产精品久久久久久久久久ktv| 亚洲精品欧洲精品| 欧美高清在线一区| 久久精品日韩欧美| 国产午夜精品全部视频在线播放| 亚洲综合色婷婷| 亚洲电影在线观看| 亚洲国产精彩中文乱码av在线播放| 午夜一区在线| 国产美女精品免费电影| 午夜欧美理论片| 亚洲一区二区三区影院| 国产精品国产三级国产专播品爱网| 99re热这里只有精品视频| 亚洲国产精品一区| 欧美jizz19hd性欧美| 亚洲另类一区二区| 亚洲国产午夜| 欧美日本高清视频| 亚洲午夜精品在线| 亚洲午夜影视影院在线观看| 国产精品日韩精品欧美精品| 久久精品国产成人| 久久久久国色av免费看影院| 亚洲国产精品成人久久综合一区| 亚洲电影免费观看高清| 欧美日本亚洲视频| 亚洲欧美中文另类| 欧美一级欧美一级在线播放| 亚洲国产精品小视频| 久久综合伊人| 亚洲另类黄色| 亚洲午夜电影网| 国产一区视频网站| 亚洲国产精品欧美一二99| 欧美视频在线观看视频极品| 欧美中文字幕视频| 欧美77777| 亚洲欧美一区二区激情| 久久夜色精品亚洲噜噜国产mv| 亚洲免费高清| 午夜久久久久久| 99国产一区| 欧美一级欧美一级在线播放| 91久久精品一区| 亚洲香蕉伊综合在人在线视看| 亚洲一区视频| 亚洲欧洲在线免费| 亚洲一区在线视频| 亚洲国产高潮在线观看| 亚洲视频视频在线| 亚洲国产欧美在线人成| 亚洲欧美激情精品一区二区| 亚洲人线精品午夜| 性欧美办公室18xxxxhd| 亚洲免费观看在线视频| 久久久久久久国产| 欧美精品一区二区三区一线天视频| 欧美在线短视频| 欧美精品免费在线| 久久久久久久久综合| 国产精品啊啊啊| 亚洲国产日韩欧美| 精品成人国产在线观看男人呻吟| 亚洲精品人人| 亚洲人成在线观看网站高清| 久久激情综合网| 午夜在线观看免费一区| 欧美日韩亚洲系列| 欧美激情精品| 亚洲国产三级在线| 久久久久久综合网天天| 久久午夜精品| 国产毛片一区| 亚洲欧美在线高清| 亚洲自拍偷拍网址| 欧美日韩精品免费看| 91久久精品国产91久久性色| 亚洲国产日韩在线一区模特| 久久久久久黄| 免费国产一区二区| 好吊视频一区二区三区四区 | 亚洲乱码视频| 欧美成人免费在线视频| 欧美成人官网二区| 在线精品视频免费观看| 久久成人国产| 卡一卡二国产精品| 在线免费不卡视频| 老司机精品导航| 亚洲成色777777女色窝| 亚洲人成人99网站| 欧美精品在线观看91| 国产日韩欧美综合| 亚洲免费一区二区| 欧美制服丝袜第一页| 国产亚洲欧美aaaa| 久久九九热re6这里有精品| 欧美aa在线视频| 亚洲第一区中文99精品| 欧美韩日一区二区三区| 亚洲美女91| 欧美一区二区三区在线观看视频| 国产日韩专区在线| 久久久亚洲午夜电影| 亚洲黄色免费| 亚洲女人小视频在线观看| 国产农村妇女精品一区二区 | 欧美久久久久久蜜桃| 一区二区三区国产在线| 久久精品在线| 91久久中文字幕| 欧美视频在线一区二区三区| 亚洲欧美日本日韩| 狂野欧美一区| 一区二区三区国产| 国产亚洲午夜| 欧美成人69| 亚洲女人天堂av| 欧美电影在线观看| 午夜在线视频一区二区区别| 黄色av一区| 欧美视频在线观看一区| 久久精品欧美日韩精品| 日韩视频在线一区二区三区| 久久午夜视频| 亚洲尤物在线视频观看| 亚洲黄一区二区三区| 国产精品白丝黑袜喷水久久久 | 国产精品久久久久久久免费软件| 欧美一级在线视频| 亚洲精品视频免费在线观看| 久久永久免费| 亚洲欧美日韩一区二区| 亚洲精品无人区| 国产一区在线观看视频| 欧美手机在线视频| 欧美freesex交免费视频| 性亚洲最疯狂xxxx高清| 亚洲看片一区| 欧美激情视频在线免费观看 欧美视频免费一| 在线中文字幕日韩| 尤物yw午夜国产精品视频明星 | 欧美理论在线| 乱码第一页成人| 久久精品国产免费观看| 亚洲欧美美女| 亚洲一区二区免费| 亚洲特色特黄| 一区二区欧美视频| av72成人在线|