比赛 顾研NOIP2011模拟赛 评测结果 AAEAAAAAAA
题目名称 项链 最终得分 90
用户昵称 Truth.Cirno 运行时间 0.200 s
代码语言 C++ 内存使用 3.15 MiB
提交时间 2012-10-18 09:23:35
显示代码纯文本
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;

int n,maxnum,a[100];

void dfs(int getnum,int now,int deep)
{
	if (deep==n)
	{
		if (now==0)
			if (maxnum<getnum)
				maxnum=getnum;
		return;
	}
	dfs(getnum+1,now^a[deep+1],deep+1);
	dfs(getnum,now,deep+1);
}

int main(void)
{
	freopen("necklaced.in","r",stdin);
	freopen("necklaced.out","w",stdout);
	int i,j,len;
	char ch[100];
	cin>>n;
	for (i=1;i<=n;i++)
	{
		cin>>ch;
		len=strlen(ch);
		for (j=0;j<len;j++)
			a[i]+=(1<<ch[j]-'A');
	}
	dfs(1,a[1],1);
	dfs(0,0,1);
	cout<<maxnum<<endl;
	return(0);
}