leetcode 3432

3432: 统计元素和差值为偶数的分区方案

设 nums 的元素和为 S,左子数组元素和为 L,那么右子数组的元素和为 S−L

题目要求 L−(S−L)=2L−S 是偶数。由于 2L 一定是偶数,所以只需关注 S 的奇偶性:

  • 如果 S 是奇数,偶数减奇数一定是奇数,答案是 0。
  • 如果 S 是偶数,偶数减偶数一定是偶数,所有分区方案都符合要求,答案是 n−1。

上述结论与 i 无关。

复制代码
class Solution {
public:
    int countPartitions(vector<int>& nums) {
        int n=nums.size();
        int x=reduce(nums.begin(),nums.end(),0);
        if(x%2==0) return n-1;
        else return 0;
    }
};
相关推荐
fufu03111 小时前
Linux环境下的C语言编程(三十七)
算法
风筝在晴天搁浅1 小时前
代码随想录 300.最长递增子序列
算法·动态规划
小O的算法实验室1 小时前
2026年EAAI SCI1区TOP,基于进化算法的多目标施工现场布局与安全规划模型,深度解析+性能实测
算法·论文复现·智能算法·智能算法改进
尋有緣1 小时前
力扣1083-销售分析II
leetcode·oracle·数据库开发
.小小陈.1 小时前
C++初阶5:string类使用攻略
开发语言·c++·学习·算法
代码游侠1 小时前
数据结构——树
数据结构·算法
天骄t1 小时前
树与哈希:数据结构核心解析
数据结构·算法
小年糕是糕手1 小时前
【C++】类和对象(六) -- 友元、内部类、匿名对象、对象拷贝时的编译器优化
开发语言·c++·算法·pdf·github·排序算法
ShineLeong1 小时前
C的第一次
数据结构·算法