位置子段最大子段和 hdu 1003 max sum ACM的开始
每日一贴,今天的内容关键字为位置子段
这个标题的印象是较比刻深的,我的第一个动态规划标题,也是ACM的开始。最大字段和是较比经典的动归问题。求一个列序的最大子段和的关键点就在于断判一个元素的归属问题,dp[i]表现含包第i个元素的最大子段和的结果,对于元素a[i],如果dp[i-1]>0那么加上dp[i-1]是有利益的,反之dp[i-1]就是赘累。这个标题有一个很好地问法,就是问你这个子段的肇端位置和束结位置。很简单,录记一下束结位置,然后根据你的动归转移方程和自己的思惟就可以失掉这个列序的肇端位置和束结位置。面下看代码。
信念是巍巍大厦的栋梁,没有它,就只是一堆散乱的砖瓦;信念是滔滔大江的河床,没有它,就只有一片泛滥的波浪;信念是熊熊烈火的引星,没有它,就只有一把冰冷的柴把;信念是远洋巨轮的主机,没有它,就只剩下瘫痪的巨架。
#include<iostream>
using namespace std;
int a[100001],b[100001];
int main()
{int T,i,k,max,n,j,e;cin>>T;for(i=1;i<=T;i++){cin>>a[0];for(k=1;k<=a[0];k++)cin>>a[k];max=a[1];b[1]=a[1];j=1;for(n=2;n<=a[0];n++){if(b[n-1]<0)b[n]=a[n];else b[n]=b[n-1]+a[n];if(b[n]>max){max=b[n];j=n;}}if(max<0)cout<<"Case "<<i<<":"<<endl<<max<<" "<<j<<" "<<j<<endl;else {for(e=j-1;e>0;e--)if(b[e]<0)break;cout<<"Case "<<i<<":"<<endl<<max<<" "<<e+1<<" "<<j<<endl;}if(i<T) cout<<endl;}return 0;
}
文章结束给大家分享下程序员的一些笑话语录: 问答
Q:你是怎么区分一个内向的程序员和一个外向的程序员的? A:外向的程序员会看着你的鞋和你说话时。
Q:为什么程序员不能区分万圣节和圣诞节? A:这是因为 Oct 31 == Dec 25!(八进制的 31==十进制的 25)
位置子段最大子段和 hdu 1003 max sum ACM的开始相关推荐
- HDU.1003 Max Sum
原题 HDU.1003 Max Sum 分类 动态规划 题意 计算从一个序列中最大连续子序列和.对应的起始元素和终止元素的位置. 输入/输出 要求与格式 样例数的确定 最开始一行开始输入样例数 每个样 ...
- hdu 1003 Max Sum (DP)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1003 Max Sum Time Limit: 2000/1000 MS (Java/Others) ...
- hdu 1003 Max Sum 解题报告
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1003 Problem Description Given a sequence a[1],a[2],a[3 ...
- [hdu 1003] Max Sum
跟<算法导论(第三版)>上的一样,抄下来的 30 - 60 ms 标准的分治策略 1 #include <stdio.h> 2 3 int A[100000], Lenght; ...
- hdu 1003 Max Sum
DP可以这里给出非DP程序 题目传送门 1 #include<stdio.h> 2 int main() 3 { 4 int t,n,i,max,m,sum,ki,kj,k,a,b; 5 ...
- HDU 1003——Max Sum(动态规划)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1003 题目大意:历遍所有数字,找出最大字段和. 解题思路: t和n:记录循环次数和每一段有多少个数字 ...
- HDU 1244 Max Sum Plus Plus Plus
虽然这道题看起来和 HDU 1024 Max Sum Plus Plus 看起来很像,可是感觉这道题比1024要简单一些 前面WA了几次,因为我开始把dp[22][maxn]写成dp[maxn][2 ...
- 杭电OJ——ACM 1003.Max Sum
Max Sum 杭电OJ--ACM 1003.Max Sum链接入口 问题描述 大意: 给定一个序列a[1],a[2],a[3]-a[n],你需要算出其子序列中的最大值.比如说:给你一个 ...
- HD 1003 Max Sum (最大字段和问题)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1003 Problem Description Given a sequence a[1],a[2],a ...
最新文章
- 解题报告:NOIP2013 车站分级(拓扑序递推求解差分约束、建图优化O(n+m)) 超详细讲解
- 更多传媒巨头或进军大数据产业
- Symbian学习笔记(4)——在GUI应用中使用图像
- [Ubuntu] apt 添加第三方库
- 华为 P40 或首发鸿蒙系统;新 iPhone Logo 移至中间;React 组件库 uiw 3.4.0 发布 | 极客头条​...
- selenium.common.exceptions.StaleElementReferenceException: Message: stale element reference: element
- 数据结构12: 实践项目之进制转换器
- 总结的AngularJS1版本的一些面试问题
- android service 的各种用法(IPC、AIDL)
- 可能是史上最全的权限系统设计
- 5.6 深度卷积神经网络(AlexNet)
- 51单片机流水灯电路以及C代码
- MongoDB官网下载和安装(ZIP安装)
- 使用CobaltStrike制作钓鱼网站
- HTML5已定稿:将彻底颠覆原生应用
- BilSTM 实体识别_肿瘤新抗原(neoantigen)专题八:新抗原识别策略使难治性实体瘤的个体化免疫治疗成为可能...
- AMD显卡如何设置高性能?
- 基于requests+pyecharts的前程无忧工作岗位可视化分析
- 【后端学习】后端技术要点总结【一】
- 基于hibernate的泛型Dao层设计
热门文章
- python交换两列的位置_如何更改 pandas dataframe 中两列的位置
- python语言的作者是_Python是一门动态语言
- c语言中二次规划函数是哪个好,c语言程序设计规划模拟试题二(含答案).doc
- .vb.net 执行js方法_Deno的执行机制
- oracle数据库函数手册,oracle函数大全连载(四)T
- python降维之时间类型数据的处理_python学习笔记之使用sklearn进行PCA数据降维
- Canvas设置样式无效导致圆变成椭圆的问题研究剖析
- 在MySQL登录时出现Access denied for user ‘root‘@‘localhost‘ (using password: YES)
- linux 安装 mysql 5.6_Linux安装MySQL_5.6
- tensorflow数据增强