国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 旅游| 三台县| 澄江县| 黎川县| 南陵县| 吉木萨尔县| 和林格尔县| 繁峙县| 庆安县| 昭通市| 桃源县| 麻栗坡县| 澳门| 色达县| 怀集县| 德格县| 天长市| 娄底市| 饶河县| 大厂| 韶山市| 凤冈县| 开鲁县| 张家界市| 满城县| 慈溪市| 淮南市| 珲春市| 嘉禾县| 诏安县| 辽源市| 如皋市| 安徽省| 鄯善县| 湘潭县| 玉门市| 西乌| 仁布县| 饶阳县| 吉林省| 钟山县|