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

首頁 > 學院 > 開發設計 > 正文

SDUT 2929 人活著系列之芳姐和芳姐的豬

2019-11-08 01:49:22
字體:
來源:轉載
供稿:網友

SDUT 2929 人活著系列之芳姐和芳姐的豬

Time Limit: 1000MS Memory Limit: 65536KB

PRoblem Description


百年來,人活著是為了什么這個問題一直縈繞在人的腦海里,也一直困擾著人的思想。人活著就是活著了,為活著本身而活著,而不是為活著之外的任何事物而活著的。正因為活著,所以活著。對,是有點莫明其妙,但也是一句最受用的話。 芳姐特別喜歡豬,所以,她特意養了n頭豬,建了m個豬圈,順便在m個豬圈間修了k條無向邊,每條邊有都有起點u,終點v,距離w。每頭豬呆在一個特定的豬圈,有一個問題一直困擾著芳姐,那就是喂豬…..芳姐和豬們約定好,每天去一個固定豬圈去吃飯,芳姐為了不累著她可愛的豬們,想知道所有的豬吃飯走的最短路程是多少?

Input


第一行: 三個數,豬的個數n(1<=n<=350),豬圈個數m(2<=m<=600),豬圈間道路數k(1<=k<=1200).(豬的編號為1..N, 豬圈的編號為1..m) 第二行到第N+1行: 1到N頭豬所在的豬圈號. 第n+2行到第n+k+1行: 每行有三個數:相連的豬圈u、v,兩豬圈間距離(1<=w<=255) 注:有的豬圈可能是空的,也可能有多頭豬,保證m個豬圈連通。

Output


Example Input


3 4 5 2 3 4 1 2 1 1 3 5 2 3 7 2 4 3 3 4 5

Example Output


8

Submit


#include <bits/stdc++.h>#define INF 0x3f3f3f3fconst int MAXN = 610;using namespace std;int i, j;int N, M, K;int mp[MAXN][MAXN], s[MAXN];void Floyd(){ for(int k = 1; k <= M; k++) for(int i = 1; i <= M; i++) for(int j = 1; j <= M; j++) mp[i][j] = min(mp[i][j],mp[i][k]+mp[k][j]);//求i, j兩豬圈最短路徑長}int main(){ scanf("%d %d %d", &N, &M, &K); for(i = 0; i < N; i++) scanf("%d", &s[i]);//豬分別在哪個豬圈 memset(mp, INF, sizeof(mp)); for(i = 0; i < MAXN; i++) mp[i][i] = 0; int u, v, w; for(i = 0; i < K; i++) { scanf("%d %d %d", &u, &v, &w); if(w < mp[u][v]) mp[u][v] = mp[v][u] = w;//豬圈之間路徑長度 } int Min = INF; Floyd(); for(i = 1; i <= M; i++) { int sum = 0; for(j = 0; j < N; j++)//某豬圈到各個豬所在豬圈路徑長之和 { sum += mp[i][s[j]]; } if(sum < Min) Min = sum; } printf("%d/n", Min); return 0;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 新安县| 辽中县| 定西市| 海阳市| 资兴市| 南丰县| 靖远县| 汉源县| 南岸区| 岳池县| 壶关县| 巴林右旗| 文登市| 临颍县| 从化市| 潢川县| 宝应县| 皮山县| 湛江市| 隆林| 乐平市| 晴隆县| 黔西| 武强县| 南召县| 福州市| 鹰潭市| 楚雄市| 娱乐| 延庆县| 博兴县| 临湘市| 奉化市| 涿鹿县| 新竹市| 西峡县| 西峡县| 保靖县| 林周县| 息烽县| 和田县|