题解 | #未排序数组中累加和为给定值的最长子数组系列问题补2#
未排序数组中累加和为给定值的最长子数组系列问题补2
http://www.nowcoder.com/practice/ab190c44af0141d58037c3f95109d722
n = int(input())
nums = list(map(int, input().split()))
dic = {0: -1}
su = 0
res = -1
for i in range(len(nums)):
if nums[i] == 0:
su -= 1
else:
su += 1
if su not in dic:
dic[su] = i
else:
res = max(res, i - dic[su])
print(res)