fork download
  1. #include<iostream>
  2. #include<algorithm>
  3. using namespace std;
  4.  
  5. long long l1[510],l2[510];
  6.  
  7. void quickSort(long long A[], long long l, long long h);
  8. long long partition (long long arr[], long long l, long long h);
  9.  
  10. void swap ( long long* a, long long* b )
  11. {
  12. long long t = *a;
  13. *a = *b;
  14. *b = t;
  15. }
  16.  
  17. int main()
  18. {
  19. long long t;
  20.  
  21. cin>>t;
  22.  
  23. while(t--)
  24. {
  25. long long n,k,p,i,x,flag=0,j;
  26. cin>>n>>k>>p;
  27.  
  28. l1[0]=1;
  29. l2[0]=1;
  30.  
  31. for(i=1;i<=k;i++)
  32. {
  33. cin>>l1[i]>>x;
  34. }
  35.  
  36. quickSort(l1,1,k);
  37. // for(i=1;i<=k;i++)
  38. // {
  39. // cout<<l1[i]<<" ";
  40. // }
  41.  
  42.  
  43. for(i=1;i<=p;i++)
  44. {
  45. cin>>l2[i]>>x;
  46. j=1;
  47. while(l2[i]>l1[j])
  48. {
  49. j++;
  50. }
  51.  
  52. if(l2[i]<l1[j])
  53. {
  54. flag=1;
  55. }
  56. }
  57.  
  58. if(flag==1)
  59. cout<<"No"<<endl;
  60. else
  61. cout<<"Yes"<<endl;
  62.  
  63. }
  64. return 0;
  65. }
  66.  
  67. long long partition (long long arr[], long long l, long long h)
  68. {
  69. long long x = arr[h];
  70. long long i = (l - 1);
  71.  
  72. for (long long j = l; j <= h- 1; j++)
  73. {
  74. if (arr[j] <= x)
  75. {
  76. i++;
  77. swap (&arr[i], &arr[j]);
  78. }
  79. }
  80. swap (&arr[i + 1], &arr[h]);
  81. return (i + 1);
  82. }
  83.  
  84. /* A[] --> Array to be sorted, l --> Starting index, h --> Ending index */
  85. void quickSort(long long A[], long long l, long long h)
  86. {
  87. if (l < h)
  88. {
  89. long long p = partition(A, l, h); /* Partitioning index */
  90. quickSort(A, l, p - 1);
  91. quickSort(A, p + 1, h);
  92. }
  93. }
Success #stdin #stdout 0s 2744KB
stdin
2
10 3 2
1 4
5 5
6 10
1 5
6 10
10 3 1
2 5
10 1
6 9
1 10
stdout
Yes
No