Pagini recente » Cod sursa (job #1156195) | Cod sursa (job #2335665) | Cod sursa (job #11477) | Cod sursa (job #27195) | Cod sursa (job #696254)
Cod sursa(job #696254)
#include <stdio.h>
#include <iostream>
#define ifile "datorii.in", "r"
#define ofile "datorii.out", "w"
#define getf fscanf
#define putf fprintf
using namespace std;
FILE * f=fopen(ifile);
FILE * g=fopen(ofile);
#define NMax 15001
#define MMax 100001
int N, M;
int A[NMax];
int step1()
{
getf(f, "%d %d", &N, &M);
for(int i = 0; i < N; i++)
getf(f, "%d", &A[i]);
return 0;
}
int op0(int t, int v)
{
A[t-1] -= v;
return 0;
}
int op1(int p, int q)
{
int sum = 0;
for(int i = p-1; i < q; i++)
sum += A[i];
putf(g, "%d\n", sum);
return 0;
}
int step2()
{
for(int i = 0; i < M; i++)
{
int op, a, b;
getf(f, "%d %d %d", &op, &a, &b);
if(op) op1(a,b);
else op0(a,b);
}
return 0;
}
int main()
{
step1();
step2();
return 0;
}