Cod sursa(job #1248212)

Utilizator AndreiiacobIacob Andrei Constantin Andreiiacob Data 24 octombrie 2014 19:41:30
Problema Datorii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.25 kb
// ConsoleApplication5.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include <fstream>
using namespace std;
ifstream fin ("datorii.in");
ofstream fout ("datorii.out");
int sum(int m[200]; int nod; int st; int dr; int a; int b;int s)
{
	if (a<st && b>dr)
		s+= m[nod];
	else  {
		int mij = (st + dr) / 2;
		if (a < mij)
		{
			sum(int m[200]; int 2 * nod; int st; int mij; int a; int b; int s)
		}
		else sum(int m[200]; int 2 * nod + 1; int mij + 1; int dr; int a; int b; int s)
			return s;
	}

int _tmain(int argc, _TCHAR* argv[])
{
	int n, m, x, y, i, s, v[100],m[200];
		fin >> n;
	fin >> m;
	for (i = 0; i < n; i++)
		fin >> v[i];
	i = 1;
	while (i < n)
	{
		i *= 2;
	}
	for (s = n; s < i; i++)
		v[s] = 0;
	for (s = i ; s<2i ; s++)
		m[s] = v[s - i ];
	n = i;
	while (i>1)
	{
		y = i - 1;
		for (s = (i - 1) / 2; s <= y; y++)
			m[s] = m[2 * s ] + m[2 * s + 1];
		i = (i - 1) / 2;
	}
	m[1] = m[2] + m[3];
	while (fin>>i)
	if (i)
	{
		fin >> x;
		fin >> y;
		s = 0;
		fout << sum(int m[200]; int 1; int 1; int 2n - 1; int x; int y; int s);
	}
	else {
		fin >> x;
		fin >> y;
		v[x - 1] -= y;
		if (v[x - 1]<0)
			v[x - 1] = 0;
	}
	fin.close();
	fout.close();
	return 0;
}