fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int n,m;
  4. int ans[300009];
  5. int main()
  6. {
  7. scanf("%d%d",&n,&m);
  8. vector<int> v(n,0);
  9. for(int i=0;i<n;i++)v[i]=i+1;
  10. while(m--)
  11. {
  12. int l,r,x;
  13. scanf("%d%d%d",&l,&r,&x);
  14. vector<int>::iterator it=upper_bound(v.begin(),v.end(),r);
  15. vector<int>::iterator jt=lower_bound(v.begin(),v.end(),l);
  16. jt++;
  17. for(int i=jt-v.begin()-1;i<it-v.begin();i++)
  18. if(v[i]!=x)ans[v[i]]=x;
  19. v.erase(jt,it);
  20. v[jt-v.begin()-1]=x;
  21. }
  22. for(int i=1;i<=n;i++)printf("%d ",ans[i]);
  23. printf("\n");
  24. return 0;
  25. }
Success #stdin #stdout 0s 4632KB
stdin
4 3
1 2 1
1 3 3
3 4 4
stdout
3 1 4 0