Cod sursa(job #722026)

Utilizator robertpoeRobert Poenaru robertpoe Data 24 martie 2012 14:57:20
Problema Reconst Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.54 kb
#include<cstdio>
#include<fstream>
using namespace std;
ifstream f("reconst.in");
ofstream g("reconst.out");
int n,m;
int a[1<<11],s[1<<11];
void solve(int x, int y, int z)
{
	if(a[x]==0)
	{
		a[x]=y;
		s[x]=z;
	}
	else
		if(a[x]<y)
			solve(a[x]+1,y,z-s[x]);
		else
			if(a[x]>y)
			{
				solve(y+1,a[x],s[x]-z);
				s[x]=y;
				s[x]=z;
			}
}
int i,x,y,z,j;
int main()
{
	f>>n>>m;
	for(i=1;i<=m;i++)
	{
		f>>x>>y>>z;
		solve(x,y,z);
	}
	for(i=n;i>=1;i--)
		for(j=i+1;j<=a[i];j++)
			s[i]=s[i]-s[j];
	for(i=1;i<=n;i++)
		g<<s[i]<<" ";
	return 0;
}