CSU 1115 最短的名字 字典樹

2021-08-04 20:35:20 字數 935 閱讀 7981

點我看題

題意:找出每個字串的公共字首的下乙個位置,計算這些長度之和.

分析;基礎字典樹.寫的時候一直在re,陣列開的太大,但是沒有給出name的最長,只能估計了.

參考**:

#include#include#include#include#includeusing namespace std;

#define mem(a,b) memset(a,b,sizeof(a))

const int maxn = 1e3+5;

const int maxm = 1e6;

int n;

//char name[10005];

char name[1005][10005];

struct trietree;

trietree tt[500005];

int tsize;

int ans;

void init()

void trieinsert( char name)

tt[rt].cnt++;

rt = tt[rt].child[id];

p++;

}}/*

int triesearch( int rt, int deep)

}}*/

int triesearch( char name)

return 0;

}int main()

ans = 0;

triesearch(0,0);

*/ for( int i = 1; i <= n; i++)

ans = 0;

for( int i = 1; i <= n; i++)

ans += triesearch(name[i]);

printf("%d\n",ans);

}}

CSU 1115 最短的名字(字典樹)

description 在乙個奇怪的村子中,很多人的名字都很長,比如aaaaa,bbb and abababab。名字這麼長,叫全名顯然起來很不方便。所以村民之間一般只叫名字的字首。比如叫 aaaaa 的時候可以只叫 aaa 因為沒有第二個人名字的前三個字母是 aaa 不過你不能叫 a 因為有兩個人...

CSU 1115 最短的名字

description 在乙個奇怪的村子中,很多人的名字都很長,比如aaaaa,bbb and abababab。名字這麼長,叫全名顯然起來很不方便。所以村民之間一般只叫名字的字首。比如叫 aaaaa 的時候可以只叫 aaa 因為沒有第二個人名字的前三個字母是 aaa 不過你不能叫 a 因為有兩個人...

CSU 1115 最短的名字

submit page summary time limit 5 sec memory limit 64 mb submitted 1731 solved 657 在乙個奇怪的村子中,很多人的名字都很長,比如aaaaa,bbb and abababab。名字這麼長,叫全名顯然起來很不方便。所以村民之...