Cod sursa(job #14351)

Utilizator pitradaPit-Rada Ionel-Vasile pitrada Data 8 februarie 2007 20:40:35
Problema Datorii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include<fstream>
using namespace std;
fstream f,g;

long A[15001],B[15001],C[15001],N,M,i,j,x,y,z,s,ok;
int main()
{
f.open("datorii.in",ios::in);
g.open("datorii.out",ios::out);

f>>N>>M;
B[0]=0;
C[0]=0;
for (i=1;i<=N;i++)
  {
  C[0]=0;
  f>>A[i];
  B[i]=B[i-1]+A[i];
  }
ok=N+1;
for (i=1;i<=M;i++)
  {
  f>>x>>y>>z;
  if (x==0) 
     {
     C[y]+=z;
     if (y<ok)ok=y;
     }
     else
     {
     if (ok<N+1)
       {
       s=0;
       for (j=ok;j<=N;j++)
         {
         s=s+C[j]; B[j]-=s; C[j]=0;
         }
       
       ok=N+1;
       }
     g<<B[z]-B[y-1]<<endl;
     }
  }


g.close();
f.close();
return 0;
}