instance.h 735 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. #ifndef INSTANCE_H
  2. #define INSTANCE_H
  3. #include <bits/stdc++.h>
  4. class pos {
  5. public:
  6. pos(int x, int y);
  7. pos();
  8. int dist2(const pos &b) const;
  9. int x, y;
  10. };
  11. class warehouse {
  12. public:
  13. warehouse(pos p, std::vector<int> disp);
  14. pos p;
  15. std::vector<int> disp;
  16. };
  17. class order {
  18. public:
  19. order(int id, pos p, std::map<int, int> ord);
  20. pos p;
  21. int id;
  22. std::map<int, int> ord;
  23. int best_wh;
  24. };
  25. class instance {
  26. public:
  27. instance(); // read from stdin
  28. int row, col, drones, max_load;
  29. int T; // deadline
  30. int P; // # products
  31. int W; // # warehouses
  32. int C; // # orders
  33. std::vector<int> weights;
  34. std::vector<warehouse> wh;
  35. std::vector<order> orders;
  36. };
  37. #endif