#P005901. 前缀匹配

    ID: 5901 传统题 1000ms 256MiB 尝试: 0 已通过: 0 难度: 3 上传者: 标签>24-6-C组月赛T2字典树基础普及/提高−

前缀匹配

题目描述

小 A 有 mm 个只由 0011 组成的序列,小 B 有 nn 个同样的序列。

如果两个序列中至少有一个是另一个的前缀,则称这两个序列能够前缀匹配。两个完全相同的序列也能够匹配。

对于小 B 的每个序列,请计算它能与小 A 的多少个序列匹配。小 A 中内容相同但编号不同的序列需要分别计算。

输入格式

第一行包含两个整数 m,nm,n

接下来 mm 行,每行先包含一个整数 xix_i,再包含 xix_i 个整数,表示小 A 的一个序列。

再接下来 nn 行,每行先包含一个整数 yiy_i,再包含 yiy_i 个整数,表示小 B 的一个序列。

输出格式

输出 nn 行,第 ii 行输出小 B 的第 ii 个序列能与小 A 的多少个序列匹配。

样例

4 5
3 0 1 0
1 1
3 1 0 0
3 1 1 0
1 0
3 0 1 0
2 0 1
5 0 1 0 0 1
2 1 1
1
3
1
1
2

数据范围与提示

  • 对于 10%10\% 的数据,1m,n101 \le m,n \le 101xi,yi101 \le x_i,y_i \le 10xi+yi30\sum x_i+\sum y_i \le 30
  • 对于 100%100\% 的数据,1m,n5×1041 \le m,n \le 5\times10^41xi,yi1041 \le x_i,y_i \le 10^4xi+yi5×105\sum x_i+\sum y_i \le 5\times10^5
  • 序列中的每个整数均为 0011