求助!!!
查看原帖
求助!!!
327444
3a51_楼主2022/1/3 12:13

按照讲解思路写的,不知道为什么有些测试点WA……

#include<iostream>
using namespace std;
long long cnt[1000005],cnt0,cnt1,ans,sum,n;
string s[1000000];
int main()
{
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>s[i];
		if(s[i][0]=='1')
			cnt1++;
		else
			cnt0++;
		sum+=s[i].size();
	}
	char c;
	if(cnt0>=cnt1)
		c='0';
	else
		c='1';
	while(sum)
	{
		long long tmp=ans;
		for(int i=1;i<=n;i++)
			while(cnt[i]<s[i].size() && s[i][cnt[i]]==c)
				cnt[i]++,sum--,ans++;
		if(ans!=tmp)
			ans--;
		if(c=='0')
			c='1';
		else
			c='0';
	}
	cout<<ans;
	return 0;
}

#4,#5,#8,#16,#18,#19,#20,#21,#23都比正确答案少1。

2022/1/3 12:13
加载中...