#4522. 接头密匙

接头密匙

题目描述

牛牛和他的朋友们约定了一套接头密匙系统,用于确认彼此身份。密匙由一组数字序列表示,两个密匙被认为是一致的,如果满足以下条件:

  1. 密匙 bb 的长度不超过密匙 aa 的长度。
  2. 对于任意 0<=i<length(b)0 <= i < length(b),有 b[i+1]b[i]==a[i+1]a[i]b[i+1] - b[i] == a[i+1] - a[i]

现在给定了 m 个密匙 b 的数组,以及 n 个密匙 a 的数组。请你返回一个长度为 m 的结果数组 ans,表示每个密匙 b 都有多少一致的密匙 a。

输入格式

第一行两个整数 m 和 n;

接下来的 m 行,第一个数c表示此密匙有几个数,后面有空格隔开的 c 个数表示此密匙数组;

接下来的 n 行有空格隔开的数表示 a 密匙数组,第一个数也表示此密匙的长度,后面是此密匙数组中的各个数;

输出格式

m行,每行一个数,表示答案。

样例1

3 3
5 1 2 3 4 5
4 2 4 6 8
4 1 4 7 10
6 3 4 5 6 7 8
4 2 4 6 8
5 1 3 5 7 9
1
2
0

说明:

与 b[0] 数组一致的 a 数组有两个:a[0]。

与 b[1] 数组一致的 a 数组有一个:a[1]和a[2]。

与 b[2] 数组一致的 a 数组没有。

ps:数组下标从0开始。

样例2

3 3
3 1 2 3
5 4 5 6 7 8
4 2 4 6 8
5 1 2 3 4 5
7 2 3 4 5 6 7 8
4 1 4 7 10
2
2
0

数据规模

  • 数组 a 和数组 b 中的元素个数均不超过 10310^3
  • 1m,n10001 \le m, n \le 1000
  • ai,bia_i,b_i 均在 intint 表示范围内。
}