比赛 |
“Asm.Def战记之拉格朗日点”杯 |
评测结果 |
AAAATTTTTT |
题目名称 |
Asm.Def的微小贡献 |
最终得分 |
40 |
用户昵称 |
debug |
运行时间 |
24.082 s |
代码语言 |
C++ |
内存使用 |
0.33 MiB |
提交时间 |
2015-11-04 10:24:47 |
显示代码纯文本
#include<cstdio>
#include<iostream>
using namespace std;
long long f[1111]={};
bool kj[1111]={};
bool kk[1111]={};
int n;
void getsum()
{
for(int i=1;i<=n;i++)
kk[i]=kj[i];
}
void gg(int a)
{
if(a>n)
{
int sum=0;
for(int i=1;i<=n;i++)
if(kj[i])
sum++;
if(sum>0)
{
long long temp=0;
for(int i=1;i<=n;i++)
if(kj[i])
temp^=f[i];
if(temp==0)
getsum();
}
}
else
kj[a]=1,gg(a+1),kj[a]=0,gg(a+1);
}
int main()
{
freopen("asm_contribute.in","r",stdin);
freopen("asm_contribute.out","w",stdout);
cin>>n;
for(int i=1;i<=n;i++)
cin>>f[i];
int ans=0;
gg(1);
for(int i=1;i<=n;i++)
if(kk[i])
ans++;
cout<<ans<<endl;
for(int i=1;i<=n;i++)
if(kk[i])
cout<<i<<" ";
cout<<endl;
}