当前位置: 首页 > wzjs >正文

合肥建设厅网站企业网络推广方案策划书

合肥建设厅网站,企业网络推广方案策划书,批发网站有哪些平台,雅安市政建设公司网站由于数据范围是2*10^5所以必然是遍历一次,子数组必定要用到前缀和,之前的题目中总是遇到的是子数组的和能不能被k整除,而这里不一样的是子数组的长度能不能被k整除,如果单纯的枚举长度必定超时,而看看题解得出的思路&a…

在这里插入图片描述
在这里插入图片描述
由于数据范围是2*10^5所以必然是遍历一次,子数组必定要用到前缀和,之前的题目中总是遇到的是子数组的和能不能被k整除,而这里不一样的是子数组的长度能不能被k整除,如果单纯的枚举长度必定超时,而看看题解得出的思路,我在做之前的题目中也有类似的。
首先,我们要想判断一个长度能不能被k整除,实际上就是判断 (j-i)%k==0 ,也就是说 j%k=i%k 同余定理,而求子数组的最大元素和,实际上就是求sum[j]-sum[i],那么我们如何找这个符合条件的i呢,我们只需要让sum[i]尽可能的小,sum[j]尽可能的大,在满足这两个条件的情况下,实际上就是让我们求:sum[j]-sum[j%k(i)]的最大值sum[j]它是可以在枚举的过程中不断更新的,而我们需要确定的是j%k也就是i的最小值。
我们可以用一个最小值数组来保存每遇到一个j,它取模后的值(也就是i)的最小值
这样我们就能在枚举的过程中不断的更新sum[i]的最小值,从而求出子数组和的最大值。
下面是求与j同余的i的最小值的方法

int i =j%k;minn[i]=min(minn[i],sum[j]);

下面是通过代码:

class Solution {
public:long long sum[200005];
long long minn[200005];long long maxSubarraySum(vector<int>& nums, int k) {for(int i=0;i<k;i++){minn[i]=LLONG_MAX/2;}minn[0]=0;for(int i=0;i<nums.size();i++){sum[i+1]=sum[i]+nums[i];}//我们要想判断一个长度能不能被k整除//实际上就是判断 (j-i)%k==0 //也就是说 j%k=i%k 同余定理//而求子数组的最大元素和//实际上就是求sum[j]-sum[i]//那么我们如何找这个符合条件的i呢//我们可以在//我们只需要让sum[i]尽可能的小//sum[j]尽可能的大//不断更新结果long long ans=LLONG_MIN;for(int j=1;j<=nums.size();j++){int i=j%k;ans=max(ans,sum[j]-minn[i]);minn[i]=min(minn[i],sum[j]);} return ans;}
};

要注意的是minn[i]初始化为LLONG_MAX/2,因为在减的过程中如果初始化为LLONG_MAX,那么相减的值可能是一个正数,而不是负数了,这样在 ans=max(ans,sum[j]-minn[i]);就会更新到错误的答案,我之前没有加出错了,所以必须加上。还有一点要注意如果j%k==0,也就是i=0,那么它初始化的最小值应该为0,也就是minn[0]=0;而不是LLONG_MAX/2;
时间复杂度O(n)。

http://www.dtcms.com/wzjs/502232.html

相关文章:

  • 想做一个公司的网站去哪可以做系统优化大师
  • 怎么做网站版面青岛网站建设公司电话
  • 太原做企业网站企业建站模板
  • 免费数据源网站网络营销与传统营销的整合
  • 郑州pc网站建设自动点击竞价广告软件
  • 开发区网站建设公司小说引流推广
  • 伊宁网站建设内部优化
  • 房屋平面设计图关键词优化哪家好
  • 营销网站建设技术成都网站seo设计
  • 商城网站建设实例需求网络营销该如何发展
  • 南京网站制作公司南京微尚福州百度快速优化
  • 做网站最便宜网店搜索引擎优化的方法
  • 医疗网站建设多少钱seo怎么做新手入门
  • 模版网站建设步骤详解鹤壁seo推广
  • 实训小结网站建设seo网络推广知识
  • 做的网站浏览器提示不安全seo推广优化官网
  • wordpress用oss还是七牛优化网站seo
  • 网站轮播图片制作91关键词
  • 私人服装定制网站seo排名技术软件
  • xml网站地图每天更新百度指数的特点
  • 做哪个网站零售最好查看百度关键词价格
  • 简约好看的网站模板快速优化seo
  • 网站建设到维护百度竞价软件哪个好
  • 巨量广告投放平台张家口网站seo
  • 萝岗微网站建设网络公司网络推广
  • 光环时讯网站西安seo主管
  • 广州网站开发外包百度推销广告一年多少钱
  • 企业网站推广可以选择哪些方法?百度网登录入口
  • 网站 形象入口页合肥做网络推广的公司
  • 如何查网站注册信息seo排名赚挂机