View Code of Problem 19

#include<stdio.h>
int main()
{
    int i,n,num[1000],k,j,smax[1000],sum,t=0,max;
    scanf("%d",&n);
    while(n!=0&&n<=1000000)
    {
        for(i=0;i<n;i++)
            scanf("%d",&num[i]);
        i=0;
        while(i<n)
        {
            while(num[i]<=0)
                i++;
            k=i;
            smax[t]=num[k];
            sum=0;
                for(j=k+1;j<n;j++)
                {
                    sum+=num[j];
                    if(sum>0)
                    {
                        smax[t]+=sum;
                        sum=0;
                    }
                }
            t++;
            i++;
        }
        max=smax[0];
        for(i=1;i<t;i++)
        {
            if(max<smax[i]) max=smax[i];
        }
        printf("%d\n",max);
        scanf("%d",&n);
    }
}

Double click to view unformatted code.


Back to problem 19