比赛 不平凡的世界 评测结果 AAAAATTTTT
题目名称 不平凡的许愿树 最终得分 50
用户昵称 pppoooiiizzy 运行时间 27.662 s
代码语言 C++ 内存使用 79.62 MiB
提交时间 2015-11-05 10:45:43
显示代码纯文本
  1. #include<iostream>
  2. #include<cstdio>
  3. #include<algorithm>
  4. #include<cstring>
  5. #include<cmath>
  6. #include<queue>
  7. #include<vector>
  8. #include<functional>
  9. #include<set>
  10. #include<map>
  11. #include<deque>
  12. #include<list>
  13. #include<ctime>
  14. #include<cstdlib>
  15. #include<string>
  16. #include<sstream>
  17. #include<iomanip>
  18.  
  19. const int maxn = 5000 + 100;
  20. using namespace std;
  21.  
  22. #define rep(i, j, k) for(int i = j; i <= k; i++)
  23. #define drep(i, j, k) for(int i = j; i >= k; i--)
  24. #define INF 0x3fffffff
  25. #define LL long long
  26.  
  27. inline int read()
  28. {
  29. int x = 0, f = 1;
  30. char ch = getchar();
  31. while(ch < '0' || ch > '9') {if(ch == '-') f = -1; ch = getchar(); }
  32. while(ch >= '0' && ch <= '9') {x = x * 10 + ch - '0'; ch = getchar();}
  33. return x * f;
  34. }
  35.  
  36. int d[maxn][maxn], Ar, Sa, m, n;
  37. int sum, cnt, tot, ans;
  38.  
  39. void init()
  40. {
  41. n = read();
  42. rep(i, 1, n - 1) {
  43. Ar = read(), Sa = read();
  44. d[Ar][Sa] = d[Sa][Ar] = 1;
  45. }
  46. }
  47.  
  48. int main()
  49. {
  50. freopen("hopetree.in", "r", stdin);
  51. freopen("hopetree.out", "w", stdout);
  52. memset(d, 0x3f, sizeof(d));
  53. init();
  54. rep(k, 1, n)
  55. rep(i, 1, n)
  56. rep(j, 1, n)
  57. d[i][j] = min(d[i][j], d[i][k] + d[k][j]);
  58. rep(i, 1, n)
  59. rep(j, i, n)
  60. rep(k, j, n) {
  61. if(d[i][j] == d[i][k] && d[i][j] == d[k][j] && d[i][k] == d[k][j]
  62. && i != j && j != k && i != k && d[i][j] != 0x3f3f3f3f) cnt++;
  63. }
  64. cout<<cnt % 338 + 1<<" "<<(cnt + 233) % 338 + 1<<endl;
  65. }
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76.  
  77.  
  78.  
  79.  
  80.  
  81.  
  82.  
  83.  
  84.  
  85.  
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92.