Pagini recente » Cod sursa (job #2063820) | Cod sursa (job #3251556) | Cod sursa (job #2586587) | Cod sursa (job #2020283) | Cod sursa (job #2335232)
#include<fstream>
#include<vector>
using namespace std;
ifstream fi("reconst.in");
ofstream fo("reconst.out");
typedef struct inter{int x,y,s;} INTER;
INTER A[2005];
int n,m,i,j,p,Rez[2005],sum;
vector<int> St[2005];
vector<int>::iterator it;
int main()
{
fi>>n>>m;
for(i=1; i<=m; i++)
{
fi>>A[i].x>>A[i].y>>A[i].s;
St[A[i].x].push_back(i);
}
for(i=1; i<=n; i++)
{
if(St[i].size()>1)
{
p=*St[i].begin();
it=St[i].begin();
for(it++; it!=St[i].end(); it++)
{
if(A[p].y!=A[*it].y)
{
A[*it].x=A[p].y+1;
A[*it].s-=A[p].s;
St[A[p].y+1].push_back(*it);
}
}
while(St[i].size()>1)
St[i].pop_back();
}
}
for(i=n; i>=1; i--)
if(St[i].size())
{
sum=0;
for(j=A[*St[i].begin()].x+1; j<=A[*St[i].begin()].y; j++)
sum+=Rez[j];
Rez[i]=A[*St[i].begin()].s-sum;
}
for(i=1; i<=n; i++)
fo<<Rez[i]<<" ";
fo<<"\n";
fi.close();
fo.close();
return 0;
}