100分 subtask1没过求调
查看原帖
100分 subtask1没过求调
666114
BWsha2k楼主2024/1/4 21:21

cha 数组记录每一个人时的男女人数差,如果一个区间的两个端点人数差相等,那么这个区间内男女人数相等。

#include<iostream>
using namespace std;
int cha[100005];
int main()
{
	ios::sync_with_stdio(false);
	int n, now, male = 0, female = 0, maxans = 0;
	cin >> n;
	for(int i = 1;i <= n;i++)
	{
		cin >> now;
		if(now == 0)
		{
			female++;
		}
		else
		{
			male++;
		}
		cha[i] = male - female;
	}
	for(int l = 0;l <= n;l++)
	{
		for(int r = n;r > l;r--)
		{
			if(cha[l] == cha[r])
			{
				if(r-l > maxans)
				{
					maxans = r-l;
				}
				break;
			}
		}
	}
	cout << maxans << endl;
	return 0;
}
2024/1/4 21:21
加载中...