IMohammedNasr

Untitled

Mar 19th, 2022
52
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.69 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. #define ll long long
  4. #define llma LONG_LONG_MAX
  5. #define llmi LONG_LONG_MIN
  6. #define imi ll_MIN
  7. #define ima ll_MAX
  8. void Mustafa()
  9. {
  10. ios_base::sync_with_stdio(false), cin.tie(nullptr), cout.tie(nullptr);
  11. #ifndef ONLINE_JUDGE
  12. freopen("input.txt", "r", stdin), freopen("output.txt", "w", stdout);
  13. #endif
  14. }
  15. bool Bs(ll x, vector < ll > & nums)
  16. {
  17. ll l = 0, r = nums.size()-1, best = -1;
  18. while(l <= r)
  19. {
  20. ll m = l + (r - l) / 2;
  21. (nums[m] < x ? l = m + 1, best = m : r = m - 1);
  22. }
  23. if(best != -1)
  24. {
  25. nums.erase(nums.begin()+best);
  26. }
  27. return (best != -1);
  28. }
  29. int main()
  30. {
  31. Mustafa();
  32. ll tt = 1;
  33. // cin >> tt;
  34. while(tt--)
  35. {
  36. ll n; cin >> n;
  37. ll k; cin >> k;
  38. vector < pair < ll , ll > > nums(n);
  39. for(auto & i : nums) cin >> i.first >> i.second;
  40. ll memo = 0, nasr = 0;
  41. if(k == 1)
  42. {
  43. for(auto & i : nums)
  44. if(i.first >= i.second)
  45. memo++;
  46. else
  47. nasr++;
  48. cout << (memo > nasr ? "NO\n" : "YES\n");
  49. }
  50. else
  51. {
  52. vector < ll > test1(n), test2(n);
  53. ll x = 0;
  54. for(auto & i : nums) test1[x] = i.first, test2[x++] = (i.second);
  55. sort(test1.begin(), test1.end());
  56. for(auto & i : test2)
  57. {
  58. if(Bs(i, test1))
  59. nasr++;
  60. else
  61. memo++;
  62. }
  63. cout << (memo > nasr ? "NO\n" : "YES\n");
  64. }
  65. }
  66. return 0;
  67. }
Advertisement
Add Comment
Please, Sign In to add comment