• 冒险村物语
  • 英雄无敌3塔防
  • 驾考家园手游

PHP操作MongoDB 数据库总结记录

2014-09-05

#include<cstdio>#include<cstring>#include<vector>using namespace std;int vis[5000];vector<int> map[5000];int ans;void dfs(int k,int num){    vis[k]=num;     //相当于给每个结点编号    for(int i=0;i<map[k].size();i++)    {        if(!vis[map[k][i]])            dfs(map[k][i],num+1);        else        {            int tmp=vis[k]-vis[map[k][i]]+1;//找到访问过的结点了,直接编号相减加1就是环的大小            if(tmp>2&&tmp>ans)            ans=tmp;        }    }}int main(){    int n,m,a,b,c;    int cas;    scanf("%d",&cas);    while(cas--)    {        ans=0;        scanf("%d%d",&n,&m);        for(int i=1;i<=n;i++)        {            map[i].clear();        }        for(int i=1;i<=m;i++)        {            scanf("%d%d",&a,&b);            map[a].push_back(b);            map[b].push_back(a);        }        memset(vis,0,sizeof(vis));        for(int i=1;i<=n;i++)        {            if(!vis[i]);            dfs(i,0);        }        printf("%d/n",ans);    }    return 0;}

 

(免责声明:文章内容如涉及作品内容、版权和其它问题,请及时与我们联系,我们将在第一时间删除内容,文章内容仅供参考)

人气推荐

知识阅读

精彩推荐

  • 游戏
  • 软件
查看更多>>