最勇敢的機械人

2021-09-29 13:15:57 字數 1020 閱讀 2725

時間限制 1000 ms

記憶體限制 128 mb

機器人們都想知道誰是最勇敢的,於是它們比賽搬運一些物品。

它們到了乙個倉庫,裡面有n個物品,每個物品都有乙個價值pi和重量wi,但是有些物品放在一起會**,並且**具有傳遞性。(a和b會**、b和c會**則a和c會**)

機器人們可不想因此損失自己好不容易從wind那裡敲詐來的裝備,於是它們想知道在能力範圍內,它們最多可以拿多少價值的物品。

你能幫助它們嗎?

每組測試資料

第 1 行為 n,wmax,k (0≤ n,wmax,k≤ 1000)

接下來 n 行,為每個物品的 pi,wi (0≤ pi≤ 1000,1≤ wi≤ 10,均為整數)

再接下來 k 行,每行 2個數字 a,b表示 a 和 b 會發生**

對每組資料輸出 1 行

為最大可能價值

3 10 1

100 1

200 5

10 5

1 2

210
分組揹包

ac**

#includeusing namespace std;

int n,wmax,k,a,b;

int p[1001],w[1001],f[1001],t[1001][1001],ans[1001];

//並查集

int findf(int x)

return x;

}void union(int x, int y)

}int main()

for (int i=0; i>a>>b;

union(a,b); //並

} for (int i=1; i<=n; i++)

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

for (int j=wmax; j>=0; j--)

}} }

cout

}

最勇敢的機械人

題目描述 wind設計了很多機械人。但是它們都認為自己是最強的,於是,一場比賽開始了 機器人們都想知道誰是最勇敢的,於是它們比賽搬運一些物品。它們到了乙個倉庫,裡面有n個物品,每個物品都有乙個價值pi和重量wi,但是有些物品放在一起會 並且 具有傳遞性。a和b會 b和c會 則a和c會 機器人們可不想...

vijos 1250 最勇敢的機械人

題目描述 wind設計了很多機械人。但是它們都認為自己是最強的,於是,一場比賽開始了 機器人們都想知道誰是最勇敢的,於是它們比賽搬運一些物品。它們到了乙個倉庫,裡面有n個物品,每個物品都有乙個價值pi和重量wi,但是有些物品放在一起會 並且 具有傳遞性。a和b會 b和c會 則a和c會 每個機械人的最...

Vijos P1250 最勇敢的機械人

p1250最勇敢的機械人 accepted wind設計了很多機械人。但是它們都認為自己是最強的,於是,一場比賽開始了 機器人們都想知道誰是最勇敢的,於是它們比賽搬運一些物品。它們到了乙個倉庫,裡面有n個物品,每個物品都有乙個價值pi和重量wi,但是有些物品放在一起會 並且 具有傳遞性。a和b會 b...