最大子序列和

来源:互联网 发布:java 日志等级 编辑:程序博客网 时间:2024/05/29 19:08

       随机给出一长串排成一行的整数,任意选取某一段连续整数,试问:如何选取才能使这串连续整数最大?

//#include <cstdlib>#include <string> //#include <fstream>#include <stdlib.h>using namespace std;#define MAX 100000int n,i,j,k,maxn,sum,a[MAX+1];int main(int argc, char** argv) {freopen("d://number.in.txt","r",stdin);freopen("d://number.out.txt","w",stdout);cin>>n;for(i=1;i<=n;i++){cin>>a[i];}maxn=a[1];for(i=1;i<=n;i++){for(j=i;j<=n;j++){sum=0;for(k=i;k<=j;k++){sum=sum+a[k];if(sum>maxn){maxn=sum;}} }}cout<<maxn<<endl;return 0;}

ps:d代码有错,有大神可以帮助解决一下吗?

0 0