luogu#P2724. [IOI 1998 / USACO3.1] 联系 Contact

[IOI 1998 / USACO3.1] 联系 Contact

背景

奶牛们开始对使用射电望远镜扫描外太空产生了兴趣。最近,她们注意到一个来自银河系中心的、非常奇怪的脉冲调制微波信号。她们想知道这些无线电波是否由某种地外生命发出,或者仅仅是普通恒星发射的。

题目描述

请帮助奶牛们,编写一个工具来分析她们记录在文件中的数据,以找出真相。她们正在寻找在数据文件中出现次数最多的前 nn 个,且长度在 AABB 之间(包含 AABB)的比特序列。

出现的位置可以重叠,每个至少出现一次的序列都应该被计数。

输入格式

第一行,包含三个整数 A,B,nA, B, n,如题目描述。

从第二行开始的若干行,描述字符串 ss,每行最多 8080 个字符(按顺序连接所有行即为完整的字符串)。

输出格式

输出出现频率最高的 nn 个序列(按频率从高到低排序)。

对于频率相同的序列,按长度从短到长排序;如果长度也相同,则按二进制数值升序排序。如果不同序列的数量少于 nn,则输出所有存在的序列。

对于出现的每个频率,首先输出一行,仅包含该频率值,然后输出具有该频率的序列,用空格分隔。每行打印六个序列(除非剩下的不足六个)。

2 4 10
01010010010001000111101100001010011001111000010010011110010000000
23
00
15
01 10
12
100
11
11 000 001
10
010
8
0100
7
0010 1001
6
111 0000
5
011 110 1000
4
0001 0011 1100

提示

样例 1 解释

在样例中,序列 100100 出现了 1212 次,而序列 10001000 出现了 55 次。出现最频繁的序列是 0000,出现了 2323 次。


数据规模与约定

对于 100100% 的测试数据,保证 1n501 \leq n \leq 501AB121 \leq A \leq B \leq 12ss 只包含字符 01,且 ss 的长度不超过 2×1052 \times 10^5