題目大意:
給出n個城市兩兩之間的距離(距離為-1則為沒有直接連線的路),求第m個城市到各個城市的最短距離。
注意:這裡城市的編號從0開始,也就是說,如果有100個城市,則每個城市的編號為0、1···99!
思路:也就是說,如果你用1···n來表示城市的編號,你最終輸出的城市編號應該是m+1!
然後,回歸正題——
這是一道最短路徑的問題,求出每個城市之間的距離,然後輸出就好啦!真水!
**:
#include
#include
using
namespace
std;
const
int maxn=999999999; //最大值
int a[102][102],n,m,f[102][102];
int main()
for (int k=1;k<=n;k++)
for (int i=1;i<=n;i++)
for (int j=1;j<=n;j++)
if (a[i][k]+a[k][j]//如果有更近的路,並且符合要求
a[i][j]=a[i][k]+a[k][j]; //賦值給距離更短的路
for (int i=1;i<=n;i++)
printf("%d ",min(a[i][m],a[m][i])); //因為從i到m和從m到i是相同的,所以輸出其中更短的距離
return
0;}
ssl1761 城市問題
城市問題 time limit 10000ms memory limit 65536k total submit 242 accepted 89 case time limit 1000ms description 設有n個城市,依次編號為0,1,2,n 1 n 100 另外有乙個檔案儲存n個城市之...
SSLOJ1761 城市問題
設有n個城市,依次編號為0,1,2,n 1 n 100 另外有乙個檔案儲存n個城市之間的距離 每座城市之間的距離都小於等於1000 當兩城市之間的距離等於 1時,表示這兩個城市沒有直接連線。求指定城市k到每乙個城市i 0 i,k n 1 的最短距離。第一行有兩個整數n和k,中間用空格隔開 以下是乙個...
城市問題 Floyd
description 設有n個城市,依次編號為0,1,2,n 1 n 100 另外有乙個檔案儲存n個城市之間的距離 每座城市之間的距離都小於等於1000 當兩城市之間的距離等於 1時,表示這兩個城市沒有直接連線。求指定城市k到每乙個城市i 0 i,k n 1 的最短距離。input 第一行有兩個整...