• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            The Fourth Dimension Space

            枯葉北風(fēng)寒,忽然年以殘,念往昔,語默心酸。二十光陰無一物,韶光賤,寐難安; 不畏形影單,道途阻且慢,哪曲折,如渡飛湍。斬浪劈波酬壯志,同把酒,共言歡! -如夢(mèng)令

            再看floyd

             

            #include<iostream>
            #include
            <cstdio>
            using namespace std;

            #define numVertices 500
            #define MAXNUM 999999999
            double weight[numVertices][numVertices];
            double a[numVertices][numVertices];
            int path[numVertices][numVertices];

            void  floyd() 

                
            int i,j,k;
                
            for   (i     =   0;   i   <   numVertices;   i++)  
                

                    
            for   (j   =   0;   j   <   numVertices;   j++
                    

                        a[i][j]   
            =   weight[i][j]; 
                        
            if   (i   !=   j   &&   a[i][j]   <   MAXNUM)  
                        

                            path[i][j]   
            =   i; 
                        }
             
                        
            else 
                        

                            path[i][j]   
            =   -1
                        }
             
                    }
             
                }
             

                
            for   (k   =   0;   k   <   numVertices;   k++)  
                

                    
            for   (i   =   0;   i   <   numVertices;   i++
                    

                        
            for   (j   =   0;   j   <   numVertices;   j++)  
                        

                            
            if   (a[i][k]   +   a[k][j]   <   a[i][j])
                            

                                a[i][j]   
            =   a[i][k]   +   a[k][j]; 
                                path[i][j]   
            =   path[k][j]; 
                            }
             
                        }
             
                    }
             
                }
             
            }



            int p;
            int ans[500];
            int f;
            void getpath(int i,int j)
            {
                p
            =0;
                f
            =0;
                
            int k;
                k
            =path[i][j];
                
            while(true)
                
            {
                    
                    
            if(k==-1)
                    
            {
                        f
            =1;
                        printf(
            "No answer\n");
                        
            return ;
                    }

                    
            else if(k==i)
                    
            {
                        printf(
            "最短路徑長度為: %lf ",a[i][j]);
                        printf(
            "路線為:");

                        ans[
            ++p]=k;
                        
            for(int ll=p;ll>=1;ll--)
                            printf(
            "%d ",ans[ll]+1);
                        printf(
            "%d\n",j+1);
                        


                        
            return ;
                    }

                    
            else
                    
            {
                        ans[
            ++p]=k;
                        k
            =path[i][k];
                    
                    }

                }

            }







            int main()
            {
                
            int n;
                
            int i,j,k;
                
            int a,b;
                scanf(
            "%d",&n);

                
            for(j=0;j< numVertices ;j++)
                    
            for(k=0;k< numVertices ;k++)
                        weight[j][k]
            =weight[k][j]=MAXNUM;

                
            for(i=1;i<=n;i++)
                
            {
                    
            double c;
                    cin
            >>a>>b>>c;
                    weight[a
            -1][b-1]=weight[b-1][a-1]=c;
                }

                floyd();
                
            int q;
                cin
            >>q;
                
            for(j=1;j<=q;j++)
                
            {
                    cin
            >>a>>b;
                    getpath(a
            -1,b-1);
                }

                
                
            return 0;
            }

            posted on 2010-05-30 17:09 abilitytao 閱讀(219) 評(píng)論(0)  編輯 收藏 引用


            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            亚洲va中文字幕无码久久不卡| 人人狠狠综合久久88成人| 久久人妻少妇嫩草AV蜜桃| 久久嫩草影院免费看夜色| 伊人久久大香线蕉亚洲| 国产国产成人精品久久| 久久久久黑人强伦姧人妻| 性欧美丰满熟妇XXXX性久久久| 婷婷久久综合九色综合98| 久久亚洲精品无码aⅴ大香 | 久久丫精品国产亚洲av| 91精品久久久久久无码| 久久久久青草线蕉综合超碰| 嫩草影院久久国产精品| 日韩av无码久久精品免费| 人妻少妇精品久久| 国产高潮国产高潮久久久91| 久久99国产乱子伦精品免费| 久久久久久久波多野结衣高潮| 久久精品国产精品亚洲人人| 国产精品久久久久久吹潮| 久久狠狠爱亚洲综合影院 | 久久精品国产亚洲av高清漫画| 亚洲七七久久精品中文国产 | 伊人久久免费视频| 狠狠色丁香久久婷婷综合| A狠狠久久蜜臀婷色中文网| 一本伊大人香蕉久久网手机| 久久夜色精品国产欧美乱| 久久久老熟女一区二区三区| 一级女性全黄久久生活片免费 | 亚洲精品乱码久久久久久按摩| 久久精品无码一区二区日韩AV| 久久国产精品国产自线拍免费| 久久久久亚洲AV无码网站| 亚洲va中文字幕无码久久不卡| 久久精品国产精品亚洲精品| 一本综合久久国产二区| 久久丫忘忧草产品| 久久综合亚洲欧美成人| 久久超乳爆乳中文字幕|