知识屋:更实用的电脑技术知识网站
所在位置:首页 > 编程技术 > PHP编程

PHP操作MongoDB 数据库总结记录

发布时间:2014-09-05 10:27:37作者:知识屋

#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;}

 

(免责声明:文章内容如涉及作品内容、版权和其它问题,请及时与我们联系,我们将在第一时间删除内容,文章内容仅供参考)
收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜