【DFS——Codeforces Beta Round #14 (Div. 2)】D. Two Paths
2011-11-18 00:22
253 查看
#include <map> #include <set> #include <list> #include <queue> #include <deque> #include <stack> #include <string> #include <time.h> #include <cstdio> #include <math.h> #include <iomanip> #include <cstdlib> #include <limits.h> #include <string.h> #include <iostream> #include <fstream> #include <algorithm> using namespace std; #define LL long long #define MIN INT_MIN #define MAX INT_MAX #define PI acos(-1.0) #define FRE freopen ("input.txt","r",stdin) #define FF freopen ("output.txt","w",stdout) #define N 205 vector<int> v ; int maxm; int dep; int dfs(int x,int pre) { int res = 0; int d1 = 0,d2 = 0;//最大&次大 int i,j; for (i = 0; i < v[x].size(); i++) { if (v[x][i] != pre) { res = max(res,dfs(v[x][i],x)); if (dep > d1) { d2 = d1; d1 = dep; } else { d2 = max(dep,d2); } } } res = max(res,d1+d2); dep = d1 + 1; return res; } int main () { int n; scanf("%d",&n); int i,j; int t = n - 1; while (t--) { int a,b; scanf("%d%d",&a,&b); v[a].push_back(b); v[b].push_back(a); } maxm = 0; //枚举每条边 for (i = 1; i <= n; i++) { for (j = 0; j < v[i].size(); j++) { int x = i; int y = v[i][j]; int a = dfs(x,y); int b = dfs(y,x); if(a*b > maxm) { maxm = a*b; } } } printf("%d\n",maxm); return 0; }
相关文章推荐
- Codeforces Round #403 (Div. 2)C Andryusha and Colored Balloons (dfs)
- DFS Codeforces Round #290 (Div. 2) B. Fox And Two Dots
- Codeforces Round #277 (Div. 2) D. Valid Sets (DP DFS 思维)
- Codeforces Round #428 (Div. 2) C. Journey(dfs deep
- CF#272 (Div. 2) B.(dfs)
- DFS/BFS Codeforces Round #301 (Div. 2) C. Ice Cave
- Codeforces Round #368 (Div. 2) D Persistent Bookcase(离线+DFS)
- [LCT维护最小生成树 || CDQ分治 || 线段树 并查集 dfs树] Codeforces 603E #334 (Div. 1) E. Pastoral Oddities
- Codeforces Round #369 (Div. 2) -- D. Directed Roads (DFS找环)
- Codeforces #297( div2) D. Arthur and Walls ( DFS
- Codeforces Round #108 (Div. 2)——状态压缩DP+spfa+dfs——Garden
- Codeforces Round #469 (Div. 1) B. A Leapfrog in the Array(dfs)
- Codeforces Round #396(Div. 2)E. Mahmoud and a xor trip【二进制拆位+Dfs处理】
- Codeforces Round #290 (Div. 2) B. Fox And Two Dots dfs
- Codeforces Round #290 (Div. 2) B. Fox And Two Dots(DFS)
- 【DFS】Codeforces Round #398 (Div. 2) C. Garland
- Codeforces #260 (Div. 1) B. A Lot of Games(数据结构:trie+DFS)
- Codeforces Round #292 (Div. 2) D. Drazil and Tiles [拓扑排序 dfs]
- Codeforces Round #358 (Div. 2) -- C. Alyona and the Tree (树上的DFS)
- Wunder Fund Round 2016 (Div. 1 + Div. 2 combined)-D(DFS)