1 | 给你一个整数数组 nums 。你需要选择 恰好 一个下标(下标从 0 开始)并删除对应的元素。请注意剩下元素的下标可能会因为删除操作而发生改变。 |
前缀和
- 分别计算计数的前缀和偶数的前缀和
- 枚举要删除的数字$i$
- $i$之前的前缀和是原先是奇数的(偶数的)删除后还是奇数的(偶数的)前缀和,$i$之后的前缀和原先是奇数的(偶数)要变成偶数(奇数)。
- 判断删除后重新组合的前缀和是否相等
本题目难度最大的地方在于边界条件的处理,奇数的前缀和只计算奇数$index$的和,偶数位置要怎么处理?
本题解中使用重复的方法,计算奇数前缀和的时候偶数位置值使用奇数的前缀和填充
1 | class Solution { |
时间复杂度$O(n)$,空间复杂度$O(n)$
1 |
|