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

免费ppt模板下载应用安徽网络优化方案

免费ppt模板下载应用,安徽网络优化方案,网站平台建设包括哪些,wordpress tag静态题目链接 题意 给定一个数组 求任意一个子数组和的绝对值的最大值(子数组可以为空) 方法一 对于最大子段和、最小子段和分别动态规划 最后对abs取max 思路 dpmx[i]表示以nums[i]结尾的子段中最大子段和 dpmn[i]表示以nums[i]结尾的子段中最小子段和…

题目链接

题意

给定一个数组
求任意一个子数组和的绝对值的最大值(子数组可以为空)

方法一

对于最大子段和、最小子段和分别动态规划
最后对abs取max

思路

dpmx[i]表示以nums[i]结尾的子段中最大子段和
dpmn[i]表示以nums[i]结尾的子段中最小子段和

Code

#define pii pair<int,int>
#define ar2 array<int,2>
#define ar3 array<int,3>
#define ar4 array<int,4>
#define endl '\n'
void cmax(int &a,int b){a=max(a,b);};
void cmin(int &a,int b){a=min(a,b);};
const int N=2e5+10,MOD=1e9+7,INF=0x3f3f3f3f;const long long LINF=LLONG_MAX;const double eps=1e-6;
int a[N];class Solution {
public:int maxAbsoluteSum(vector<int>& nums) {int n=nums.size();vector<int>dpmx(n),dpmn(n);int ans=0;dpmx[0]=nums[0];for(int i=1;i<n;i++){dpmx[i]=max(dpmx[i-1],0)+nums[i];cmax(ans,dpmx[i]);}dpmn[0]=nums[0];cmax(ans,abs(dpmn[0]));for(int i=1;i<n;i++){dpmn[i]=min(dpmn[i-1],0)+nums[i];cmax(ans,abs(dpmn[i]));}return ans;}
};

实现细节

注意记得ans要跟dpmn的第一个元素取max

空间优化版

#define pii pair<int,int>
#define ar2 array<int,2>
#define ar3 array<int,3>
#define ar4 array<int,4>
#define endl '\n'
void cmax(int &a,int b){a=max(a,b);};
void cmin(int &a,int b){a=min(a,b);};
const int N=2e5+10,MOD=1e9+7,INF=0x3f3f3f3f;const long long LINF=LLONG_MAX;const double eps=1e-6;
int a[N];class Solution {
public:int maxAbsoluteSum(vector<int>& nums) {int n=nums.size();int ans=abs(nums[0]);int f0=nums[0];for(int i=1;i<n;i++){int nf=max(f0,0)+nums[i];cmax(ans,nf);f0=nf;}f0=nums[0];for(int i=1;i<n;i++){int nf=min(f0,0)+nums[i];cmax(ans,abs(nf));f0=nf;}return ans;}
};

方法二

前缀和 遍历尝试以[1,n-1]每个元素作为子数组结尾的情况 对n个sum取max

思路

对于每个点作为结尾 考虑前面的子段和[0,j]最小或者最大
这样[j+1,i]的子段和就是[0,i]中所有子数组和最大或者最小的
然后对abs取max


这里使用set维护前面的子段和 也可以开一个大根堆和一个小根堆

Code

class Solution {
public:int maxAbsoluteSum(vector<int>& nums) {int n=nums.size();set<int>st;int sum=0,ans=0;st.emplace(0);for(int i=0;i<n;i++){sum+=nums[i];ans=max({ans,abs(sum-*st.begin()),abs(sum-*st.rbegin())});st.emplace(sum);}return ans;}
};
http://www.dtcms.com/wzjs/832759.html

相关文章:

  • 郑州高端网站建设团队个人网站可以做音乐下载网
  • 公司网站建设基本流程网站建设与管理复习题
  • 网站制作价格是多少元网站制作 毕业设计
  • apache 多网站免费做淘客cms网站
  • wordpress你访问的网站不存在制作网页时文字可以做超链接吗
  • 注册网站除了域名dede 网站打开自动加html
  • 网站备案网站简介网站开发实践实验教程
  • 网页制作与网站建设教程浙江建设厅网站首页
  • 国美在线网站建设费用爱心代码编程python
  • 网站程序文件常州做网站的
  • 沭阳网站制作电子商务网站开发项目
  • 天津做网站的公wordpress4绑定多个域名
  • 建设企业网站官网登录网站优化公司电话
  • 网站seo检测工具上网导航下载
  • 站长之家 wordpress想自己做网站 有免费的吗
  • 电脑网站自适应怎么做揭阳网站设计公司
  • 网站被加黑链建设银行国管公积金管理中心网站
  • 十大免费跨境网站wordpress采集图片不显示
  • 如何制作淘宝详情页图片百度移动端优化
  • 搭建电商平台网站建材做网销哪个网站好
  • 高端网站改版网站后台有哪些
  • 河间网站建设推广中铁十六门户登录
  • 做it题的网站甘肃手机版建站系统价格
  • 推广型网站如何建站网站如何制作学校的做
  • 网络设计的原则有哪些小程序seo帝搜软件sem880官网
  • 什么网站可以接装修活wordpress主题文档
  • 找个会做网站的 一起做网站wordpress设置固定链接伪静态
  • 做企业网站需要服务器么wordpress获取分类链接
  • 国内网站模板wordpress 分词
  • 兰州网站设计公司排名wordpress伪原创