Pagini recente » Cod sursa (job #2263403) | Statistici UPB Fetoiu Popescu Gogonea (vulturii) | Cod sursa (job #874564) | Cod sursa (job #1321490) | Cod sursa (job #641749)
Cod sursa(job #641749)
#include <iostream>
#include <fstream>
using namespace std;
int n,m, a[50],mat[30][3],l=0,suma[50];
ifstream fin("datorii.in");
ofstream fout("datorii.out");
void citire()
{
int i,j,k;
fin>>n>>m;
for (i=1;i<=n;i++)
fin>>a[i];
for (j=1;j<=m;j++)
for (k=1;k<=3;k++)
fin>>mat[j][k];
}
int achitare(int t,float v)
{
a[t]=a[t]-v;
return a[t];
}
void interogare(int p,int q)
{
int s=0,i;
for (i=p;i<=q;i++)
s=s+a[i];
l++;
suma[l]=s;
}
void test()
{
int i,j;
for (i=1;i<=m;i++)
{
if (mat[i][1]==0) a[mat[i][2]]=achitare(mat[i][2],mat[i][3]);
if (mat[i][1]==1) interogare(mat[i][2],mat[i][3]);
}
}
void restrictii()
{
if ((n>=1) && (n<=15000) && (m>0) && (m<=100000))
test();
}
void afisare()
{
int i,ok=1,j;
for (i=1;i<=n;i++)
if (a[i]<0) ok=0;
if (ok==1)
{
for (j=1;j<=l;j++)
fout<<suma[j]<<"\n";
}
}
int main()
{
citire();
restrictii();
afisare();
return 0;
}