您好,欢迎访问代理记账网站
移动应用 微信公众号 联系我们

咨询热线 -

电话 15988168888

联系客服
  • 价格透明
  • 信息保密
  • 进度掌控
  • 售后无忧

LeetCode 5831. 你可以工作的最大周数(对称抵消)

题意:

在这里插入图片描述
在这里插入图片描述

解法:

对称抵消的想法:
设数组的最大值=ma,数组的和=sum.

如果ma*2<=sum,那么一定可以全部消去,答案为sum.
如果ma*2>sum,那么答案为(sum-ma)*2+1.

code:

class Solution {
public:
    long long numberOfWeeks(vector<int>& a) {
        int ma=0;
        long long sum=0;
        for(auto i:a)ma=max(ma,i),sum+=i;
        if(ma*2<=sum)return sum;
        else return (sum-ma)*2+1;
    }
};


分享:

低价透明

统一报价,无隐形消费

金牌服务

一对一专属顾问7*24小时金牌服务

信息保密

个人信息安全有保障

售后无忧

服务出问题客服经理全程跟进