用于存放学校的作业便于复习。
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

43 lines
1.9 KiB

  1. // @Time : 2023-10-23 21:42:40
  2. // @FileName: constants.h
  3. // @Author : 423A35C7
  4. // @Software: VSCode
  5. #ifndef _CONSTANTS
  6. #define _CONSTANTS
  7. #include <bits/stdc++.h>
  8. typedef int Status;
  9. typedef int int_; // 用来扩展,可以更改来实现long long长度的,但好像违反了对修改封闭的原则
  10. #define int_MAX INT_MAX // 配合上面的扩展用
  11. using coordinate = std::pair<int, int>;
  12. #define DEFAULT_PROBABILITY_NUM 10 // 默认每个时刻有1/DEFAULT_PROBABILITY_NUM的概率来人
  13. #define DEFAULT_SPEED 1e2 // 默认每个窗口办理的速度
  14. #define DEFAULT_TOTAL_TIME 1e4 // 默认的总时刻数
  15. #define MAX_MONEY 200000 // 最大携带金额
  16. #define DEFAULT_WINDOW_NUM 10 // 默认柜台数量
  17. #define DEFAULT_BASE_X 5 // 默认起始位置距离终端上边几个字符的距离
  18. #define DEFAULT_BASE_Y 5 // 默认起始位置距离终端左边几个字符的距离
  19. #define DEFAULT_SEP 20 // 默认每个窗口间隔多少距离
  20. #define DEFAULT_WALK_SPEED 2.0 // 默认的人的走路速度
  21. #define DEFAULT_GATE_X 50 // 默认的大门的位置终端上边几个字符的距离
  22. #define DEFAULT_GATE_Y 100 // 默认的大门的位置终端左边几个字符的距离
  23. #define DEFAULT_SLEEP_TIME 10 // 默认每次刷新间隔多少毫秒
  24. #define DEFAULT_RANDOM_SEED (unsigned)std::time(NULL) // 默认的随机数种子
  25. const Status OK = 0;
  26. const Status ERROR = -1;
  27. // const unsigned seed = DEFAULT_RANDOM_SEED;
  28. // https://www.cnblogs.com/shirishiqi/p/5431627.html
  29. // 此宏展开后,类似于printf("123"),printf("456");
  30. #define TRACE_CMH_1 (printf("%s(%d)-<%s>: ", __FILE__, __LINE__, __FUNCTION__), printf)
  31. // 此宏展开后,类似于printf("%d""%d", 1, 2);
  32. #define TRACE_CMH_2(fmt, ...) \
  33. printf("%s(%d)-<%s>: "##fmt, __FILE__, __LINE__, __FUNCTION__, ##__VA_ARGS__)
  34. #endif