fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. int main(){
  5. int q, n, m, boo=1;
  6. cin >> q;
  7. while (q--){
  8. cin >> n >> m;
  9. int t[n], l[n], h[n];
  10. for (int i=0; i<n; i++){
  11. cin>>t[i]>>l[i]>>h[i];}
  12. int aux=0, mn=m, mx=m;
  13. for (int i=0; i<n; i++){
  14. mx+=t[i]-aux;
  15. mn-=t[i]-aux;
  16. if (mx<l[i] || mn>h[i]){
  17. boo=0;
  18. break;}
  19. mx=min(mx, h[i]);
  20. mn=max(mn, l[i]);
  21. aux=t[i];}
  22. (boo==1)?cout<<"NO"<<endl:cout<<"YES"<<endl;
  23. }
  24. }
Success #stdin #stdout 0s 4516KB
stdin
4
3 0
5 1 2
7 3 5
10 -1 0
2 12
5 7 10
10 16 20
3 -100
100 0 0
100 -50 50
200 100 100
1 100
99 -100 0
stdout
NO
YES
YES
YES