2168: 均衡发展

内存限制:256 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:7 解决:0

题目描述

神牛小R在许多方面都有着很强的能力,具体的说,他总共有m种能力,并将这些能力编号为1m。他的能力是一天一天地提升的,每天都会有一些能力得到一次提升,R对每天的能力提升都用一个数字表示,称之为能力提升数字,比如数字13,转化为二进制为1101,并且从右往左看,表示他的编号为1,3,4的能力分别得到了一次提升。小R把每天表示能力提升的数字的记了下来,如果在连续的一段时间内,小R的每项能力都提升了相同的次数,小R就会称这段时间为一个均衡时期,比如在连续5天内,小R的每种能力都提升了4次,那么这就是一个长度为5的均衡时期。

于是,问题来了,给出 R  n天的能力提升数字,请求出均衡时期的最大长度。

输入

第一行有两个整数n,m,表示有n天,m种能力。接下来有n行,每行有一个整数,分别表示第1n天的能力提升数字。能力提升数字转化为二进制后,从右到左的每一位表示对应的能力是否在当天得到了一次提升。

n<=100000, m<=30

输出

输出只有一个整数,表示长度最大的均衡时期的长度。

样例输入 复制

7 3
7
6
7
2
1
4
2

样例输出 复制

4

提示

【样例解释】

每天被提升的能力种类分别为:

第一天:123

第二天:23

第三天:123

第四天:2

第五天:1

第六天:3

第七天:2

第三天到第六天为长度最长的均衡时期

因为 这四天 每种能力分别提升了 2

 

【数据规模】对于50%的数据,N <= 1000