instance.h 757 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  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. int dist2(pos &b);
  8. int x, y;
  9. };
  10. class warehouse {
  11. public:
  12. warehouse(pos p, std::vector<int> disp);
  13. pos p;
  14. std::vector<int> disp;
  15. };
  16. class order {
  17. public:
  18. order(pos p, std::map<int, int> ord);
  19. pos p;
  20. std::map<int, int> ord;
  21. };
  22. class instance {
  23. public:
  24. instance(); // read from stdin
  25. int find(pos p, int id, int quantity); // cherche une warehouse proche de x/y
  26. int row, col, drones, max_load;
  27. int T; // deadline
  28. int P; // # products
  29. int W; // # warehouses
  30. int C; // # orders
  31. std::vector<int> weights;
  32. std::vector<warehouse> wh;
  33. std::vector<order> orders;
  34. };
  35. #endif