国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

Hdu 3631 Shortest Path(Floyd插點(diǎn))

2019-11-10 23:10:33
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

題目地址:http://acm.hdu.edu.cn/showPRoblem.php?pid=3631

思路:Floyd,對(duì)于已求出最短路的圖,若增加一點(diǎn)k及相應(yīng)的邊,則只需將k當(dāng)做中間節(jié)點(diǎn)更新點(diǎn)u與點(diǎn)v的距離即可。因此,每增加一個(gè)標(biāo)記點(diǎn)時(shí),則將標(biāo)記點(diǎn)當(dāng)做中間節(jié)點(diǎn)更新最短路徑,由于點(diǎn)數(shù)只有300,時(shí)間上可以承受。

#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;typedef long long LL;const int maxn=300+50;const int INF=0x3f3f3f3f;int n,m,q;int flag[maxn];LL g[maxn][maxn];void Floyd(int k){    for(int i=0; i<n; i++)    {        for(int j=0; j<n; j++)        {            g[i][j]=min(g[i][j],g[i][k]+g[k][j]);        }    }}void init(){    for(int i=0; i<n; i++)    {        g[i][i]=0;        for(int j=0; j<n; j++)            if(i!=j) g[i][j]=INF;    }    memset(flag,0,sizeof(flag));}int main(){    int cas=0;    while(scanf("%d%d%d",&n,&m,&q)!=EOF&&n)    {        cas++;        if(cas!=1) printf("/n");        printf("Case %d:/n",cas);        init();        for(int i=0; i<m; i++)        {            LL w;            int x,y;            scanf("%d%d%lld",&x,&y,&w);            g[x][y]=min(g[x][y],w);        }        for(int i=0; i<q; i++)        {            int cmd,x,y;            scanf("%d",&cmd);            if(cmd==0)            {                scanf("%d",&x);                if(flag[x]) printf("ERROR! At point %d/n",x);                else                {                    Floyd(x);                    flag[x]=1;                }            }            else            {                scanf("%d%d",&x,&y);                if(!flag[x]||!flag[y]) printf("ERROR! At path %d to %d/n",x,y);                else                {                    if(g[x][y]>=INF) printf("No such path/n");                    else printf("%lld/n",g[x][y]);                }            }        }    }    return 0;}


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 鹰潭市| 奉新县| 全州县| 枞阳县| 金塔县| 南城县| 浦东新区| 恭城| 承德县| 九江县| 钟祥市| 临安市| 镇宁| 通城县| 玉田县| 大邑县| 永春县| 德格县| 淮安市| 衡阳县| 石嘴山市| 太仆寺旗| 台东县| 广元市| 封丘县| 墨玉县| 深泽县| 大埔区| 驻马店市| 崇左市| 拉孜县| 黄梅县| 阿拉善左旗| 淮南市| 昭通市| 鲁甸县| 察隅县| 凤冈县| 监利县| 确山县| 宁明县|