Pabon_SEC

The Settlers of Catan

May 2nd, 2016
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.08 KB | None | 0 0
  1. #include<bits/stdc++.h>
  2.  
  3. using namespace std;
  4.  
  5. vector<int>graph[30];
  6.  
  7. bool color[30][30];
  8.  
  9. int node,edge;
  10.  
  11. int dfs(int u)
  12. {
  13.     int i,len = graph[u].size(),mx=0;
  14.  
  15.     for(i=0;i<len;i++)
  16.     {
  17.         if(!color[u][graph[u][i]])
  18.         {
  19.             color[u][graph[u][i]] = true;
  20.  
  21.             color[graph[u][i]][u] = true;
  22.  
  23.             mx = max(mx,1+dfs(graph[u][i]));
  24.  
  25.             color[u][graph[u][i]] = false;
  26.  
  27.             color[graph[u][i]][u] = false;
  28.         }
  29.     }
  30.  
  31.     return mx;
  32. }
  33.  
  34. int main()
  35. {
  36.     int ans,i,u,v,mx;
  37.  
  38.     while(scanf("%d%d",&node,&edge) &&node &&edge)
  39.     {
  40.         for(i=1;i<=edge;i++)
  41.         {
  42.             scanf("%d%d",&u,&v);
  43.  
  44.             graph[u].push_back(v);
  45.  
  46.             graph[v].push_back(u);
  47.         }
  48.  
  49.         ans = 0;
  50.  
  51.         for(i=0;i<node;i++)
  52.         {
  53.             memset(color,false,sizeof(color));
  54.  
  55.             mx = dfs(i);
  56.  
  57.             ans = max(ans,mx);
  58.         }
  59.  
  60.         printf("%d\n",ans);
  61.  
  62.         for(i=0;i<=node;i++)
  63.         {
  64.             graph[i].clear();
  65.         }
  66.     }
  67.  
  68.     return 0;
  69. }
Advertisement
Add Comment
Please, Sign In to add comment