Car的旅行路線

2021-07-01 18:10:02 字數 1450 閱讀 2998

題目描述 description

又到暑假了,住在城市a的car想和朋友一起去城市b旅遊。她知道每個城市都有四個飛機場,分別位於乙個矩形的四個頂點上,同乙個城市中兩個機場之間有一條筆直的高速鐵路,第i個城市中高速鐵路了的單位里程**為ti,任意兩個不同城市的機場之間均有航線,所有航線單位里程的**均為t。

那麼car應如何安排到城市b的路線才能盡可能的節省花費呢?她發現這並不是乙個簡單的問題,於是她來向你請教。

任務 找出一條從城市a到b的旅遊路線,出發和到達城市中的機場可以任意選取,要求總的花費最少。

輸入描述 input description

第一行為乙個正整數n(0<=n<=10),表示有n組測試資料。

每組的第一行有四個正整數s,t,a,b。

s(0

#include 

#include

#include

#include

#include

using

namespace

std;

const

int maxn=110;

double price[maxn*4][maxn*4];

int s,a,b;

int xx1,yy1,x2,y2,x3,y3,x4,y4;

double t,t;

struct sss

sss()

}airport[maxn];

int tot=0;

double dist(int a,int b,int x,int y)

void get_pos(int x1,int y1,int x2,int y2,int x3,int y3,int& x4,int& y4)

else

if ((x1-x2)*(x3-x2)==(-(y1-y2)*(y3-y2)))

else

if ((x1-x3)*(x2-x3)==(-(y1-y3)*(y2-y3)))

}void build_path(int pos1,int pos2,double p)

void build()

}}void read()

//構建兩個假想的節點分別連線到 start 和 target 城市裡,並且路徑權值為 0,這是為了輸出方便,省去a,b各四個節點的比較,見work()中的輸出(注釋)

for(int i=1;i<=s;i++)

}void work()//floyd

}//printf("%.lf\n",price[a][b]);}}

}printf("%.1lf\n",price[0][tot+1]);、

/*for(int i=0;i<4;i++)

printf("%.1lf\n",price[a*4-i][b*4-i]);*/

}int main()

return

0;}

Car的旅行路線

題d car的旅行路線 時間限制 1 記憶體限制 128 mb 提交 1 解決 0 標籤標籤已被遮蔽 提交狀態 討論版 題目描述 又到暑假了,住在城市a的car想和朋友一起去城市b旅遊。她知道每個城市都有四個飛機場,分別位於乙個矩形的四個頂點上,同乙個城市中兩個機場之間有一 條筆直的高速鐵路,第i個...

Car的旅行路線

又到暑假了,住在城市a的car想和朋友一起去城市b旅遊。她知道每個城市都有四個飛機場,分別位於乙個矩形的四個頂點上,同乙個城市中兩個機場之間有一條筆直的高速鐵路,第i個城市中高速鐵路了的單位里程 為ti,任意兩個不同城市的機場之間均有航線,所有航線單位里程的 均為t。那麼car應如何安排到城市b的路...

演算法訓練 Car的旅行路線

問題描述 又到暑假了,住在城市a的car想和朋友一起去城市b旅遊。她知道每個城市都有四個飛機場,分別位於乙個矩形的四個頂點上,同乙個城市中兩個機場之間有一 條筆直的高速鐵路,第i個城市中高速鐵路了的單位里程 為ti,任意兩個不同城市的機場之間均有航線,所有航線單位里程的 均為t。那麼car應如何安排...