题解 | #单词查找树#

单词查找树

https://ac.nowcoder.com/acm/problem/16864

就是一个tire树的板子

#include<cstdio>
using namespace std;
const int N = 101010;
int son[N][52], cnt[N], idx;
int sum = 0;
char s[100];
void insert(char* str)
{
	int p = 0;
	for (int i = 0; str[i]; i++)
	{
		int u = str[i] - 'A';
		if (!son[p][u]) son[p][u] = ++idx;
		p = son[p][u];
	}
	cnt[p]++;
}
int main()
{
	while (scanf("%s", s) != EOF)
	{
		insert(s);
	}
	cout << idx+1;
	return 0;
}
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务