比赛 |
顾研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);
}