Răspuns :

Răspuns:

#include <fstream>

using namespace std;

ifstream f("snooker1.in");

ofstream g("snooker1.out");

int fr[5];

int v[1005];

int t[1005],k;

int main()

{   int n;

   f>>n;

   int r=1,lgm=0,lg=1;

   for(int i=0; i<n; i++) f>>v[i];

   if(v[0]>0) t[k++]=1;

       else t[k++]=0;

   for(int i=1; i<n; i++)

   {   if(v[i-1]==0 || v[i-1]==-5)

           if(r==1) r=2;

               else r=1;

       fr[r]+=v[i];

       if(v[i]>0) t[k++]=1;

           else t[k++]=0;

   }

   g<<((fr[1]>fr[2]) ? 1 : 2)<<'\n';

   int st=0,dr=0;

   for(int i=1; i<=k; i++)

       if(!t[i-1] && t[i]) st=dr=i;

           else

               if(t[i-1] && !t[i])

               {   int lg=dr-st+1;

                   if(lg>lgm && v[i]!=-5) lgm=lg;

               }

                   else if(t[i]==t[i-1] && t[i]) dr++;

   g<<lgm;

   return 0;

}

Explicație: