Pagini recente » Cod sursa (job #323295) | Cod sursa (job #2067581) | Cod sursa (job #310608) | Borderou de evaluare (job #2006029) | Cod sursa (job #274903)
Cod sursa(job #274903)
#include <stdio.h>
#define DIM 2005
long a[DIM],s[DIM],l[DIM];
long n,m,p,q,sum;
void baga (int p,int q,int sum)
{
if (q<p)
return;
if (!l[p])
{
l[p]=q;
s[p]=sum;
return;
}
if (l[p]<q)
baga (l[p]+1,q,sum-s[p]);
else
{
baga (q+1,l[p],s[p]-sum);
l[p]=q;
s[p]=sum;
}
}
void read ()
{
int i;
scanf ("%ld%ld",&n,&m);
for (i=1; i<=m; ++i)
{
scanf ("%ld%ld%ld",&p,&q,&sum);
baga (p,q,sum);
}
}
void solve ()
{
int i;
for (i=n; i; --i)
if (l[i])
a[i]=s[i]+a[l[i]+1];
else
a[i]=a[i+1];
for (i=1; i<=n; ++i)
printf ("%ld ",a[i]-a[i+1]);
}
int main ()
{
freopen ("reconst.in","r",stdin);
freopen ("reconst.out","w",stdout);
read ();
solve ();
return 0;
}