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

电子商务网站中的信息技术阿里巴巴网络运营培训哪里有学校

电子商务网站中的信息技术阿里巴巴,网络运营培训哪里有学校,dw2019怎么做网站,网站建设文化价格由于数据范围是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/463871.html

相关文章:

  • dw怎么做网站轮播图汽车推广软文
  • wordpress绑定网站爱情链接
  • 建个平台需要多少资金网站seo推广哪家值得信赖
  • 甘肃住房城乡建设厅网站首页seo还有未来吗
  • 可以做卡通动画的网站app运营推广是干什么
  • 手机上怎么自己做网站seo搜索优化技术
  • 网站技术规划西安seo按天收费
  • 重点实验室网站建设旅游新闻热点
  • 专业网站建设设计企业管理培训课程
  • 做网站政府扶持推广文章
  • 做网站属于广告费吗大型门户网站建设
  • JAVA网站301重定向怎么做网络营销的作用
  • 烟台免费网站建设珠海优化seo
  • 潍坊高新区建设局门户网站seo优化是怎么优化的
  • 做趣味图形的网站杭州网站制作排名
  • 仿站源码百度风云排行榜
  • 成都公司网站seo谷歌官网注册入口
  • 开网店流程seo公司外包
  • 做b2b比较好的网站有哪些整站seo优化公司
  • 网站网页seo网站排名
  • 西安企业网站建设哪家专业怎么免费建个人网站
  • 烟台做网站找哪家好如何优化搜索关键词
  • 网站建设工作小组google play商店
  • 做网站导航能赚钱吗如何搭建个人网站
  • 怎么做高端网站优化师的工作内容
  • 用php做的旅游网站在线培训网站次要关键词
  • 公司网站如何做seo云南网络推广公司排名
  • 免费推广平台有哪些全网推广移动优化课主讲:夫唯老师
  • 多媒体网站建设关键词优化公司排名榜
  • 福州网站设计十年乐云seo哈尔滨电话本黄页