Cod sursa(job #302212)

Utilizator dacyanMujdar Dacian dacyan Data 8 aprilie 2009 19:05:30
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.07 kb
#include <fstream>   
using namespace std;   
  
long x, a, n, k;   
long smax = -25001, s, i, j, imax , jmax;   
  
int main()   
{   
    ifstream fin("secv2.in");   
    fin >> n >> k;   
    if  ( n  == k )   
    {   
        smax = 0;   
        for ( i = 1; i <= n; i++)   
        {   
                fin >> x;   
                smax += x;   
        }   
        imax = n; jmax = 1;   
    }           
    else  
    for ( i = 1; i <= n; i++)   
    {   
           
        fin >> x;   
       
        s += x;   
        if ( s >= 0)    
                a++;   
        else    
        {   
                a = 0;   
                j = i;   
                s = 0;   
        }       
        if ( s > smax && a >= k)   
        {   
                jmax = j + 1;   
                imax = i;   
                smax = s;   
        }       
            
    }   
    fin.close();   
    ofstream fout("secv2.out");   
    fout  << jmax << ' ' << imax  << ' ' << smax << '\n';   
    fout.close();   
    return 0;   
}