zoukankan      html  css  js  c++  java
  • 【PAT甲级】1007 Maximum Subsequence Sum (25 分)

    题意:

    给出一个整数K(K<=10000),输入K个整数。输出最大区间和,空格,区间起点的数值,空格,区间终点的数值。如果有相同的最大区间和,输出靠前的。如果K个数全部为负,最大区间和输出0,区间起点的数值为a[1],区间终点的数值为a[n]。

    AAAAAccepted code:

     1 #include<bits/stdc++.h>
     2 using namespace std;
     3 int a[10007];
     4 int main(){
     5     int n;
     6     cin>>n;
     7     int mx=-1e9,ans=-1e9;
     8     int startt=0,endd=0;
     9     int tmp=0;
    10     for(int i=1;i<=n;++i){
    11         cin>>a[i];
    12         if(mx<0){
    13             mx=a[i];
    14             tmp=a[i];
    15         }
    16         else
    17             mx+=a[i];
    18         if(mx>ans){
    19             startt=tmp;
    20             endd=a[i];
    21             ans=mx;
    22         }
    23     }
    24     if(ans<0)
    25         cout<<"0 "<<a[1]<<" "<<a[n];
    26     else
    27         cout<<ans<<" "<<startt<<" "<<endd;
    28     return 0;
    29 }
    保持热爱 不懈努力 不试试看怎么知道会失败呢(划掉) 世上无难事 只要肯放弃(划掉)
  • 相关阅读:
    偶遇问题
    上机实践
    知识点摸清
    实用脚本
    实用脚本
    对于问题,要打破砂锅问到底,也要懂得不求甚解——不执着于问题本身
    偶遇问题
    知识点摸清
    偶遇问题
    程序员论坛
  • 原文地址:https://www.cnblogs.com/ldudxy/p/11216897.html
Copyright © 2011-2022 走看看