main.cpp 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #include <iostream>
  2. using namespace std;
  3. struct Box {
  4. int Ai;
  5. int Bi;
  6. };
  7. bool judge(int V, int maxAi, int maxBi, int allAi) {
  8. if (maxAi > maxBi){
  9. return false;
  10. }
  11. if (allAi > V){
  12. return false;
  13. }
  14. if(maxBi > V){
  15. return false;
  16. }
  17. return true;
  18. }
  19. int main() {
  20. int T, V, N;
  21. Box *boxes;
  22. while (cin >> T) {
  23. for (int i = 0; i < T; i++) {
  24. cin >> V >> N;
  25. int maxAi = 0, maxBi = 0;
  26. int allAi = 0;
  27. boxes = new Box[N];
  28. for (int j = 0; j < N; j++) {
  29. Box box;
  30. cin >> box.Ai >> box.Bi;
  31. if (box.Ai > maxAi) {
  32. maxAi = box.Ai;
  33. }
  34. if (box.Bi > maxBi) {
  35. maxBi = box.Bi;
  36. }
  37. allAi += box.Ai;
  38. boxes[j] = box;
  39. }
  40. cout << (judge(V, maxAi, maxBi, allAi) ? "YES" : "NO") << endl;
  41. free(boxes);
  42. }
  43. }
  44. return 0;
  45. }