pat1007Maximum Subsequence Sum (25)
2015-10-02 16:50
274 查看
题意分析:
(1)给出一组整数序列,求出这组整数序列中和最大的子序列的和,并给出子序列首位元素在原序列中的位置
(2)简单题,求最大子序列的和,采用两个指针first、last指向首元素,每次last向后移动一位,并计算从first到last之间的序列的和并更新最大和,当和小于0时,first与last重新初始化为当前last的下一个位置
可能坑点:
(1)当所有元素均为0的时候,应该是0 0 0
(1)给出一组整数序列,求出这组整数序列中和最大的子序列的和,并给出子序列首位元素在原序列中的位置
(2)简单题,求最大子序列的和,采用两个指针first、last指向首元素,每次last向后移动一位,并计算从first到last之间的序列的和并更新最大和,当和小于0时,first与last重新初始化为当前last的下一个位置
可能坑点:
(1)当所有元素均为0的时候,应该是0 0 0
#include <iostream> using namespace std; int array[10001]; int start,final; void getMaxSum(int array[],int num) { int max=0; int sum=0; for(int i=0,j=0;i<num&&j<num;j++) { sum+=array[j]; if(sum>max) { max=sum; start=array[i]; final=array[j]; } if(sum<0) { sum=0; i=j+1; } } cout<<max<<" "<<start<<" "<<final<<endl; } int main() { int K,i=0; cin>>K; int flag=1; while(i<K) { cin>>array[i]; if(array[i]>=0)flag=0; i++; } if(flag) { cout<<0<<" "<<array[0]<<" "<<array[K-1]<<endl; return 0; } getMaxSum(array,K); return 0; }
相关文章推荐
- UIstoryboard
- leetcode 288: Unique Word Abbreviation
- NGUI点击事件的添加
- UGUI学习笔记4——UI Events,Event Triggers
- 分治法Devide-and 4000 -Conquer
- 接口测试SoapUI参数化之Datasource20151002
- CodeForces 416A Guess a number!
- iOS开发 浅解UIDynamicAnimator
- 【KMP字符串匹配】hdu 1711 Number Sequence
- 安装VMWare时Failed to create requested registry key的解决方法
- CodeForces 441B Valera and Fruits
- ZOJ - 2421 Recaman's Sequence(打表水题)
- JAVA——GUI鼠标事件
- JAVA——GUI窗口实现文本转移
- AndroidUI 布局动画-为列表添加布局动画效果
- AndroidUI 布局动画-为列表添加布局动画效果
- UIDynamic动画
- iOS:文本视图控件UITextView的详细使用
- 弹出键盘 输入框上移
- 【解决方法】EasyUI DataGrid不显示滚动条时,没有数据的问题