Even Subset Sum Problem CodeForces

#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
const int N=1010;
int a[N];
int sum;
int main()
{
	int t;
	cin>>t;
	while(t--)
	{
		int n;
		cin>>n;
		sum=0;
		int pos=0;
		for(int i=1;i<=n;i++)
		{
			cin>>a[i];
			sum+=a[i];
			if(a[i]%2)
				pos=i;
		}
		if(sum%2==0)
		{
			cout<<n<<endl;
			for(int i=1;i<=n;i++)
				cout<<i<<" ";
			cout<<endl; 
		}
		else if(sum%2==1)
		{
			if(n==1)
				cout<<"-1"<<endl;
			else
			{
				cout<<n-1<<endl; 
				for(int i=1;i<=n;i++)
				{
					if(i==pos)
						continue;
					else
						cout<<i<<" ";
				}
				cout<<endl;
			}
		}
	}
} 
原文地址:https://www.cnblogs.com/QingyuYYYYY/p/12542219.html