NEUOJ 720 頭哥的煩惱

2021-07-13 17:03:46 字數 1208 閱讀 5947

題目意思:頭哥,眾所周知,作為acm隊的主力選手,最近遇到了一些煩惱,那就是cet-4臨近了,但是他還有很多單詞沒記住.

現在頭哥有n個單詞沒記住,(所有的單詞長度加起來不超過5e5),他需要區分其中的m對單詞,因為兩個單詞前面有一部分是一樣的,所以他只需要記住後面不相等的部分,所以頭哥想要知道每對單詞最長相等的字首長度。

題目連線:

思路就是,建個字典樹在,所為的最長公共字首,可以這樣求,即是,兩個字串的最近公共祖先lca 的那個字母的深度。

需要注意一下的是。我在自己的電腦上 結構體裡開了個26*100000的陣列,就執行錯誤了,交到oj 能ac ;

#include

#include

#include

#include

using namespace std;

const int maxnode=5

*100000;

int f[maxnode];

int v=-1;

struct trie

int idx(char c)

void insert(char *s,int v,int num)

u=ch[u][c];

}val[u]=v;

f[num]=u;

v=max(v,u);

}};char ss[100000

*5+10];

int parent[32][100000

*5+10];

int depth[100000

*5+10];

void dfs(int v,int p,int d,trie &t1)

}}void init(int v)

else }}

} int lca(int u,int v)

}if(u==v) return u;

for(int k=32-1;k>=0;k--)

}return parent[0][u];

} int main()

dfs(0,-1,0,t1);

init(v);

int u,v,pot;

for(int i=0;i}

return0;}

/* int query(char *s)

else

}return

1&&val[u];

} */

7 20英語學習筆記

一 exercise 1.hamper n阻礙,盒子,v阻礙 hammer n錘子 2.ignore v忽視 ignorance n無知 ignorant adj無知的 3.migrate 移民 immigrate 移民入境 emigrate 移民出境 4.inherit v繼承 heir n繼承人...

7 20 電話聊天狂人

給定大量手機使用者聯絡歷史,找出其中通話次數最多的聊天狂人。輸入首先給出正整數n 10 5 為聯絡歷史條數。隨後n行,每行給出一條聯絡歷史。簡單起見,這裡只列出撥出方和接收方的11位數字構成的手機號碼,其中以空格分隔。在一行中給出聊天狂人的手機號碼及其通話次數,其間以空格分隔。如果這樣的人不唯一,則...

python學習總結7 20

01決策樹原理概論 樹模型決策樹 從根節點開始一步步走到葉子節點 所有的資料最終都會落到葉子節點,既可以做分類也可以做回歸 樹的組成 根節點 第乙個選擇點 非葉子節點與分支 中間過程 葉子節點 最終的決策結果 節點增加節點相當於在資料中切一刀 決策樹的訓練與測試 訓練階段 從給定的訓練集構造出來一棵...