【洛谷】P8306 【模板】字典树

【洛谷】P8306 【模板】字典树_第1张图片

 

【洛谷】P8306 【模板】字典树_第2张图片

 (最后有解释哦)

0:所需参数

const int N=3e6+10;

int t[N][70],cnt[N],idx;
char s[N];

 1.映射字符

int getnum(char x) {
	if(x>='A'&&x<='Z') return x-'A';
	else if(x>='a'&&x<='z') return x-'a'+26;
	else return x-'0'+52;
}

2.插入字符串

void insert(char str[]) {
	int p=0,len=strlen(str);

	for(int i=0; i

3.查询操作

int find(char str[]) {
	int p=0,len=strlen(str);
	for(int i=0; i

 

4:进行(如果多组数据)初始化操作

void insert(char str[]) {
	int p=0,len=strlen(str);

	for(int i=0; i

 ACcode:

#include
using namespace std;
#define int long long
const int N=3e6+10;
int T,q,n,t[N][70],cnt[N],idx;
char s[N];
int getnum(char x) {
	if(x>='A'&&x<='Z') return x-'A';
	else if(x>='a'&&x<='z') return x-'a'+26;
	else return x-'0'+52;
}
void insert(char str[]) {
	int p=0,len=strlen(str);

	for(int i=0; i>n>>q;
    for(int i=1;i<=n;i++){
    	cin>>s;
    	insert(s);
	}
	for(int i=1;i<=q;i++){
		cin>>s;
		cout<>t;
	while(t--) {
		solve();
	}
	return 0;
}

【洛谷】P8306 【模板】字典树_第3张图片

【洛谷】P8306 【模板】字典树_第4张图片 

【洛谷】P8306 【模板】字典树_第5张图片 

 

你可能感兴趣的:(数学建模,字典树,算法,c++,加油)