给出 n 个字符串,可以任意交换 2 个字符构成回文串,请问最多有多少个回文串。
假设在 01 充足的情况下,想要构成回文串,只有长度为偶数,且 0/1 都是奇数,才无法构成回文串
因为可以任意交换,所以只要判断是否含有偶数串且 0/1 为奇数即可
int main()
{IOS;rush(){cin>>n;int flag=0;int have[2]={0};for(i=1;i<=n;i++){string s;cin>>s;int len=s.size();if(len&1) flag=1;for(j=0;s[j];j++){have[0] += s[j]=='0';have[1] += s[j]=='1'; }}if(!flag && have[0]&1 && have[1]&1) n--;cout<<n<<endl;}//PAUSE;return 0;
}