ZOJ1221(uva567)

来源:互联网 发布:淘宝卖家怎么设置折扣 编辑:程序博客网 时间:2024/06/17 07:35

两个题的数据是一样的,但是UVA的输出格式更严格一些在输出时要加上%2d 才能过,PE了好几次。。。

uva 567的代码

#include <iostream>#include <cstdio>#include <string>#define INF 1000000using namespace std;const int maxn=100;int d[maxn][maxn];int n,k;void Init(){    for(int i=0;i<maxn;i++)    {        for(int j=0;j<maxn;j++)        {            if(i==j) d[i][j]=0;            else d[i][j]=INF;        }    }}void floyd(){    for(int k=1;k<22;k++)    {        for(int i=1;i<22;i++)        {            for(int j=1;j<22;j++)            {                d[i][j]=min(d[i][j],d[i][k]+d[k][j]);            }        }    }    return;}int main (){    int kase=1;    while(~scanf("%d",&n))    {        printf("Test Set #%d\n",kase++);        Init();        for(int i=1;i<=n;i++)        {            scanf("%d",&k);            d[k][1]=d[1][k]=1;        }        for(int i=2;i<=19;i++)        {            scanf("%d",&n);            for(int j=1;j<=n;j++)            {                scanf("%d",&k);                d[k][i]=d[i][k]=1;            }        }        scanf("%d",&n);        int from,to;        floyd();        for(int i=1;i<=n;i++)        {            scanf("%d%d",&from,&to);            printf("%2d to %2d: %d\n",from,to,d[from][to]);        }         printf("\n");    }    return 0;}


0 0
原创粉丝点击