leetcode1186 Maximum Subarray Sum with One Deletion
思路:
最大子段和的变体,前后两个方向分别扫一遍即可。
实现:
class Solution
{
public:
int maximumSum(vector<int>& arr)
{
int n = arr.size();
if (n == ) return arr[];
vector<int> f(n), b(n);
int minn = , sum = ;
for (int i = ; i < n; i++)
{
sum += arr[i];
f[i] = sum - minn;
minn = min(minn, sum);
}
minn = sum = ;
for (int i = n - ; i >= ; i--)
{
sum += arr[i];
b[i] = sum - minn;
minn = min(minn, sum);
}
int ans = *max_element(f.begin(), f.end());
for (int i = ; i < n; i++)
{
if (arr[i] > ) continue;
ans = max(ans, (i > ? f[i - ] : ) + (i < n - ? b[i + ] : ));
}
return ans;
}
}
leetcode1186 Maximum Subarray Sum with One Deletion的更多相关文章
- 【leetcode】1186. Maximum Subarray Sum with One Deletion
题目如下: Given an array of integers, return the maximum sum for a non-empty subarray (contiguous elemen ...
- Maximum Subarray Sum
Maximum Subarray Sum 题意 给你一个大小为N的数组和另外一个整数M.你的目标是找到每个子数组的和对M取余数的最大值.子数组是指原数组的任意连续元素的子集. 分析 参考 求出前缀和, ...
- [LeetCode] Maximum Subarray Sum
Dynamic Programming There is a nice introduction to the DP algorithm in this Wikipedia article. The ...
- LeetCode 53. Maximum Subarray(最大的子数组)
Find the contiguous subarray within an array (containing at least one number) which has the largest ...
- 【LeetCode】最大子阵列 Maximum Subarray(贪婪&分治)
描述: Given an integer array nums, find the contiguous subarray (containing at least one number) which ...
- LeetCode Array Easy 53. Maximum Subarray 个人解法 和分治思想的学习
Description Given an integer array nums, find the contiguous subarray (containing at least one numbe ...
- [LeetCode] Maximum Size Subarray Sum Equals k 最大子数组之和为k
Given an array nums and a target value k, find the maximum length of a subarray that sums to k. If t ...
- Subarray Sum & Maximum Size Subarray Sum Equals K
Subarray Sum Given an integer array, find a subarray where the sum of numbers is zero. Your code sho ...
- Subarray Sum & Maximum Size Subarray Sum Equals K && Subarray Sum Equals K
Subarray Sum Given an integer array, find a subarray where the sum of numbers is zero. Your code sho ...
随机推荐
- 引入其他服务器的JS文件,同时也引入本地JS文件 报错时:
控制台报错: Uncaught ReferenceError: define is not defined at core.js:5
- 靠边的列表如果没有设置margin-left:20px,那么是看不到列表序号的。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- CF707D Persistent Bookcase 可持久化线段树
维护一个二维零一矩阵(n,m<=1000),支持四种操作(不超过10^5次): 将(i,j)置一 将(i,j)置零 将第i行零一反转yu 回到第K次操作前的状态 每次操作后输出全局一共有多少个一 ...
- 数据库学习之七--视图(View)
一.定义 视图:指计算机数据库中的一个临时虚拟表,其内容由查询定义:同真实的表一样,视图包含一系列带有名称的列和行数据.但是,视图并不在数据库中以存储的数据值集形式存在. 二.优点 1. 优点: a. ...
- 点分 TREE
/* 1468: Tree Time Limit: 10 Sec Memory Limit: 64 MBSubmit: 774 Solved: 412[Submit][Status][Discus ...
- 转载:CentOS 6.5下安装Python 3.5.2(与Python2并存)
原文:https://www.jb51.net/article/115370.htm 这篇文章主要给大家介绍了在CentOS 6.5下安装Python 3.5.2的方法教程,安装后的python3与P ...
- HDU 1402 A * B Problem Plus ——(大数乘法,FFT)
因为刚学fft,想拿这题练练手,结果WA了个爽= =. 总结几点犯的错误: 1.要注意处理前导零的问题. 2.一定要注意数组大小的问题.(前一个fft的题因为没用到b数组,所以b就没管,这里使用了b数 ...
- Hadoop Aggregate Resource Allocation解释
1.在hadoop里面运行程序的时候,查看某个任务的具体信息如下: [hadoop@master monitor]$ yarn application -list 如上图,这里面的Aggregate ...
- weui-wxss框架实现博远企信小程序
- 使用Redis sorted set实现集合设置member过期
在我们日常工作中,有许多这种逻辑 例如需要得到最近三分钟的cache list. 例如我们监控系统需要查询最近一分钟的数据. 总结说来就是 需要一个list存储对象,并且这个对象会无限制增长,需要设置 ...