1703 暴力摩托

2021-09-11 03:25:14 字數 952 閱讀 1892

problem : 暴力摩托

time limit: 1 sec memory limit: 128 mb

submit: 120 solved: 62

[submit][status][web board]descriptionn個站,之間連了m條雙向的通路!但每條路都規定了乙個速度的限制值,在這條路上必須以這個速度前進!所以在

前進的時候要調整速度,現決定盡量使調整的幅度小一些,也就是使走過的路的速度最大值與最小值之差最小!

input第一行有2個正整數n , m , 分別表示站點數,路徑數.

接下來m行,每行有3個正整數 x, y, v表示x, y之間有一條路,其speed值是v。

再接下來是數k, 表示任務數,

下面k行,每行有一對正整數p,q ,表示乙個任務從p到q.

(1<=n<=200, 1<=m<=1000, 1<=k<=10)

output對於每乙個任務輸出一行,僅乙個數,即最大速度與最小速度之差。

sample input

4 41 2 2

2 3 4

1 4 1

3 4 2

21 3

1 2sample output10

這一題可以用並查集做,一開始先要排序,這樣的話之後找到了摩托可以走的路就不用去判斷了,直接跳出迴圈,所以還要寫乙個cmp比較函式。然後就可以尋找當前x和y的根,如果沒有連通,就把他們所在的分支連線,最後再判斷一下最小值就可以輸出了。

#includeusing namespace std;

struct node a[1001];

bool cmp(node a,node b)

if(f[x]==f[y])

ans=min(ans,abs(a[j].v-a[i].v));

}cout<}

return 0;

}

Problem 暴力摩托

原文 time limit 1 sec memory limit 128 mb n個站,之間連了m條雙向的通路!但每條路都規定了乙個速度的限制值,在這條路上必須以這個速度前進!所以在 前進的時候要調整速度,現決定盡量使調整的幅度小一些,也就是使走過的路的速度最大值與最小值之差最小!第一行有2個正整數...

Problem 暴力摩托

原文 time limit 1 sec memory limit 128 mb n個站,之間連了m條雙向的通路!但每條路都規定了乙個速度的限制值,在這條路上必須以這個速度前進!所以在 前進的時候要調整速度,現決定盡量使調整的幅度小一些,也就是使走過的路的速度最大值與最小值之差最小!第一行有2個正整數...

暴力摩托(並查集)

英雄最喜歡玩暴力摩托,乙個通宵之後,總算過了全關!正當他為自己的成績洋洋得意的時候卻發現居然還有乙個特別的附加關!華英雄雖然累得眼睛都睜不開了,但是他還是決定再試一試!這一關與以前的關不同,包含有n個站,之間連了m條雙向的通路!但每條路都規定了乙個speed值,在這條路上必須以這個速度前進!所以在前...