1231(dp).cpp

来自「杭电 acm部分代码 有兴趣的可以下载 谢谢」· C++ 代码 · 共 32 行

CPP
32
字号
#include<iostream>
#include<string>
using namespace std;
int s[100000];
void main()
{
    int n,max,result,sign,start,end,st,r,i;
    while(cin>>n&&n){
        memset(s,0,sizeof(s));
        for(i=0;i<n;i++)
            cin>>s[i];
        sign=0;
        for(i=0;i<n;i++)
            if(s[i]>=0)
                sign=1;
        if(sign==1){
            max=0;result=0;start=0;end=0;r=0;st=0;
            for(i=0;i<n;i++){
                if(max>=0)   {max+=s[i];end=i;}
                else    {max=s[i];start=i;end=i;}
                if(max>result)   {result=max;st=start;r=end;}
            }
            if(result>0)
                cout<<result<<" "<<s[st]<<" "<<s[r]<<endl;
            else
                cout<<"0 0 0"<<endl;
        }
        else
            cout<<"0 "<<s[0]<<" "<<s[n-1]<<endl;
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?