hdu 1869 六度分离

来源:互联网 发布:怎么找教育数据 编辑:程序博客网 时间:2024/05/06 01:32
#include <stdio.h>#include <string.h>#include <iostream>#include <algorithm>#include <vector>#include <queue>#include <stack>#include <set>#include <map>#include <string>#include <math.h>#include <stdlib.h>#include <time.h>using namespace std;int main(){    int n,m,i,j,k,x,y,g[100+5][100+5];    while(~scanf("%d%d",&n,&m))    {        for(i=0; i<n; i++)            for(j=0; j<n; j++)                g[i][j]=99;        for(i=0; i<m; i++)        {            scanf("%d%d",&x,&y);            g[x][y]=g[y][x]=1;        }        for(k=0; k<n; k++)            for(i=0; i<n; i++)                for(j=0; j<n; j++)                {                    if(g[i][k]+g[k][j]<g[i][j]) g[i][j]=g[i][k]+g[k][j];                }        int f=1;        for(i=0; i<n; i++)            for(j=0; j<n; j++)                if(g[i][j]>7)                {                    f=0;                    break;                }        if(f) printf("Yes\n");        else printf("No\n");    }    return 0;}
0 0
原创粉丝点击