#include<iostream>
#include<cstring>
using namespace std;
struct node
{
int num;
node *next[26];
}*root;
void join(const char *s)
{
node *p=root,*t;
int i,len=strlen(s);
for(i=0;i<len;i++)
if(p->next[s[i]-'a'])
p=p->next[s[i]-'a'];
else
{
t=new node;
memset(t,0,sizeof(node));
p->next[s[i]-'a']=t;
p=t;
}
p->num++;
}
void work(const char *s)
{
node *p;
int i,j,len=strlen(s),sum=0;
for(i=0;i<len;i++)
{
p=root;
for(j=i;j<len;j++)
{
if(p->next[s[j]-'a'])
{
p=p->next[s[j]-'a'];
sum+=p->num;
p->num=0;
}
else
break;
}
}
printf("%d\n",sum);
}
void init()
{
int num;
char t[60];
root=new node;
memset(root,0,sizeof(node));
scanf("%d",&num);
while(num--)
{
scanf("%s",t);
join(t);
}
}
int main()
{
int exp;
char t[1000010];
scanf("%d",&exp);
while(exp--)
{
init();
scanf("%s",t);
work(t);
}
}

最新文章

  1. SharePoint 向多行文本类型字段插入特殊类型链接
  2. SQLSERVER数据库表各种同步技术
  3. 【MVC 4】2.使用 Razor
  4. Android学习笔记02
  5. 【转载】理解OAuth 2.0
  6. WPF-控件-ListView
  7. 删除: warning C4996: &amp;#39;sprintf&amp;#39;: This function or variable may be unsafe. Consider 方法
  8. Jenkins的插件
  9. 一个栗子上手CSS3动画
  10. LeetCode 107. Binary Tree Level Order Traversal II (二叉树阶层顺序遍历之二)
  11. 豹哥嵌入式讲堂:ARM知识概要杂辑(4)- Cortex-M处理器性能指标
  12. 使用kingshard遇到的坑
  13. (4)java数据结构--集合类及其数据结构归纳-有大图
  14. 表达式引擎aviator
  15. grpc(一)grpc-java之helloworld
  16. Linux pip 命令无法使用问题
  17. 41.纯 CSS 绘制一支栩栩如生的铅笔
  18. 哈尔滨理工大学第七届程序设计竞赛初赛(BFS多队列顺序)
  19. Web 前端性能优化相关内容解析[转]
  20. timedatectl — Control the system time and date

热门文章

  1. 【bzoj1415】[Noi2005]聪聪和可可 期望记忆化搜索
  2. GDOI2018前夕 错误总结
  3. 在react项目当中使用redux
  4. 能量采集(bzoj 2005)
  5. [HNOI2012]矿场搭建(tarjan求点双)
  6. C#.NET中使用存储过程的方法及其优点
  7. 从无序序列中求这个序列排序后邻点间最大差值的O(n)算法
  8. hdu 5950 Recursive sequence 递推式 矩阵快速幂
  9. 使用git快捷方便的保存代码
  10. linux解决无法打开资源管理器