时间限制:C/C++/Rust/Pascal 2秒,其他语言4秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld
题目描述
我收到了

件礼物,其中每个礼物有

个颜色。
接下来会输入一个序列

,表示已知 Boss 送我的那一件礼物会有颜色

。
请输出每次得到信息之后,

件礼物中可能是 Boss 送我的礼物个数。
注意:询问之间不独立,例如得到第三条信息时,你需要综合前三条(第一、二、三条)信息综合判断礼物是否符合要求。
输入描述:
全文第一行输入一个正整数
,表示数据组数。
对每组数据,第一行输入两个正整数
。
接下来输入一个
的矩阵,第
行第
列表示第
个礼物的第
种颜色
。
接下来输入一个长度为
的序列,表示序列
。
数据保证同一行之内
互不相同(即一个礼物上不会有两种相同的颜色),且信息
互不相同。
输出描述:
对每组数据输出一行
个数,表示每次得到信息之后的结果。
示例1
输入
复制
2
3 3
1 2 3
2 3 4
3 4 5
3 2 1
3 2
1 2
2 3
1 3
1 2
说明
第一组数据,三件礼物的颜色分别是

,一开始信息是

,三件礼物都符合;第二次信息是

,只有前两件符合;最后一次信息是

,只有第一件符合,因此依次输出符合要求的礼物个数

。
第二组数据,三件礼物颜色分别是

,第一条信息给出之后,

和

都包含颜色

,因此符合要求的有

个;第二条信息给出之后,同时具有颜色

的只有物品

了。