#10054. 「一本通 2.3 练习 3」Secret Message 秘密信息

内存限制:512 MiB 时间限制:1000 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: 1bentong

题目描述

原题来自:USACO 2008 Dec. Gold

贝茜正在领导奶牛们逃跑。为了联络,奶牛们互相发送秘密信息。

信息是二进制的,共有 MM 条。反间谍能力很强的约翰已经部分拦截了这些信息,知道了第 ii 条二进制信息的前 bib_i 位。他同时知道,奶牛使用 NN 条密码。但是,他仅仅了解第 jj 条密码的前 cjc_j 位。

对于每条密码 jj ,他想知道有多少截得的信息能够和它匹配。也就是说,有多少信息和这条密码有着相同的前缀。当然,这个前缀长度必须等于密码和那条信息长度的较小者。

输入格式

第一行输入 NNMM,之后 NN 行描述秘密信息,之后 MM 行描述密码.每行先输入一个整数表示信息或密码的长度,之后输入这个信息或密码。

所有数字之间都用空格隔开。

输出格式

MM 行,输出每条密码的匹配信息数。

样例

样例输入

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

样例输出

1
3
1
1
2

样例解释

44 条信息,55 条密码

截获的信息前缀是 010,1,100,110010, 1, 100, 110,可能的密码前缀是 0,1,01,01001,110, 1, 01, 01001, 11

00 只配对 010010

11 配对 1,100,1101, 100, 110

0101 只配对 010010

0100101001 配对 010010

1111 配对 1,1101,110

数据范围与提示

对于 100%100\% 的数据, 1M50000,1N50000,1bi10000,1cj100001\le M\le 50000,1\le N\le 50000,1\le b_i\le 10000,1\le c_j\le 10000,位的总数即 Bi+Ci\sum B_i+\sum C_i 不会超过 500000500000