| 比赛 | 
    20120711 | 
    评测结果 | 
    AAAAAWWWATTT | 
    | 题目名称 | 
    平衡奶牛 | 
    最终得分 | 
    50 | 
    | 用户昵称 | 
    kaaala | 
    运行时间 | 
    4.026 s  | 
    | 代码语言 | 
    C++ | 
    内存使用 | 
    0.70 MiB  | 
    | 提交时间 | 
    2012-07-11 10:16:49 | 
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cmath>
#include<cstring>
#include<algorithm>
using namespace std;
const int oo=~0u>>1;
int N,M,ans,Num[100010];
long long K;
int main()
{
	freopen("balline.in","r",stdin);
	freopen("balline.out","w",stdout);
	scanf("%d%d",&N,&K);
	K=(1<<K);
	for(int i=1;i<=N;i++)
	{
		scanf("%d",&Num[i]);
		Num[i]%=K;
	}
	for(int i=1;i<N;i++)
	{
		long long tmp=Num[i];
		for(int j=i+1;j<=N;j++)
		{
			tmp^=Num[j];
			if(!tmp)
				ans=max(ans,j-i+1);
		}
	}
	if(N==1&&(Num[1]==K||!Num[1]))
		ans=1;
	printf("%d\n",ans);
	return 0;
}