将奇数看成-1, 偶数看成+1
题目可以转化为求区间和为0的区间个数
[i,j][i,j][i,j]的区间和可以表示为sum[j]−sum[i−1](i≤j)sum[j]-sum[i-1](i\le j)sum[j]−sum[i−1](i≤j)
那么本质上就是求sum[j]=sum[i−1](i≤j)sum[j]=sum[i-1](i\le j)sum[j]=sum[i−1](i≤j)的个数,这个可以通过每个数出现次数来计算
时间复杂度:O(nlogn)O(nlogn) O(nlogn)
注册一个 云斗学院 通用账户,您就可以在我们提供的所有在线评测服务上提交代码、参与讨论。
使用您的 云斗学院 通用账户