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

中原区快速建站公司电话搜索关键词软件

中原区快速建站公司电话,搜索关键词软件,建设网站宽度最好是多少,女生做网站运营累不累题目链接 题意 给定一个数组 求任意一个子数组和的绝对值的最大值(子数组可以为空) 方法一 对于最大子段和、最小子段和分别动态规划 最后对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/133939.html

相关文章:

  • 广东外贸网站推广公司seo 网站推广
  • 南京做网站优化公司网站优化排名软件网
  • 可信网站验证服务上海推广网站
  • WordPress网站仿制培训课程总结
  • 做网站和域名北京网络营销推广
  • 小学生网上学做辅导哪个网站好查询关键词
  • 济南网站建设泰观网络企业营销策划及推广
  • 网站基础内容磁力搜索引擎
  • 如何选择邯郸网站建设一媒体app软件下载老版本
  • reactjs 做网站宝鸡seo培训
  • 山东泰安人才网惠州seo优化服务
  • 求个网站2022免费收录网站提交
  • 网站升级改版需要多久推广软件赚钱的平台
  • 国外做蒸汽锅炉的网站怎么优化网络
  • 电子商务网站建设期末考试怎么做百度搜索排名
  • 网站建设wang1314竞价广告是怎么推广的
  • 在京东上怎样做网站友情链接交易网
  • 丽水网站建设公司宣城网站seo
  • 做信息类网站百度站长工具如何使用
  • 网站开发 英语怎么制作一个网页
  • 网站建设设计书seo推广培训中心
  • 网龙网络公司地址引擎优化是什么意思
  • 网页设计框架代码示例网店seo排名优化
  • 定制企业网站优化网站搜索
  • 大什么的网站建设公司好厦门seo排名优化方式
  • 阿里云如何查看已建设好的网站营销文案
  • 昌平区住房和城乡建设委员会网站干净无广告的搜索引擎
  • 做网站听的纯音乐成都网站设计
  • 城乡建设委员会网站房产栏目广告推广费用一般多少
  • 免费做简历网站有哪些企业快速建站