時間限制: 1000 ms 記憶體限制: 65536 kb
在乙個地圖上有n個地窖(n<=200),每個地窖中埋有一定數量的地雷。同時,給出地窖之間的連線路徑,並規定路徑都是單向的,且保證都是小序號地窖指向在序號地窖,也不存在可以從乙個地窖出發經過若干地窖後又回到原來地窖的路徑。某人可以從任一處開始挖地雷,然後沿著指出的連線往下挖(僅能選擇一條路徑),當無連線時挖地雷工作結束。設計乙個挖地雷的方案,使他能挖到最多的地雷。
第一行:地窖的個數;
第二行為依次每個地窖地雷的個數;
下面若干行:
xi yi //表示從xi可到yi,xi最後一行為"0 0"表示結束。
k1-k2-…-kv //挖地雷的順序
挖到最多的雷。
65 10 20 5 4 5
1 21 4
2 43 4
4 54 6
5 60 0
3-4-5-6
#include#include#include
using
namespace
std;
int h[205],f[205],mp[205][205],a[205
];int
main()
intx,y;
while(cin>>x>>y)
a[n]=0
;
for(int i=n-1;i>0;i--)
for(int j=i+1;j<=n;j++)
if(mp[i][j]&&f[j]+h[i]>f[i])
for(int i=1;i<=n;i++)
if(anscout
while
(k)
cout
}
1262 例9 6 挖地雷
題目描述 在乙個地圖上有n個地窖 n 200 每個地窖中埋有一定數量的地雷。同時,給出地窖之間的連線路徑,並規定路徑都是單向的,且保證都是小序號地窖指向大序號地窖,也不存在可以從乙個地窖出發經過若干地窖後又回到原來地窖的路徑。某人可以從任意一處開始挖地雷,然後沿著指出的連線往下挖 僅能選擇一條路徑 ...
挖地雷問題
問題描述 在乙個地圖上有n個地窖 n 20 每個地窖中埋有一定數量的地雷。同時,給出地窖之間的連線路徑。如圖3 圖3當地窖及其連線的資料給出之後,某人可以從任一處開始挖地雷,然後可以沿著指出的連線往下挖 僅能選擇一條路徑 當無連線時挖地雷工作結束。設計乙個挖地雷的方案,使某人能挖到最多的地雷。輸入檔...
挖地雷問題
目錄dp二 使用一維陣列 在一條公路上埋有若干堆地雷,每堆地雷有一定的數量,地雷堆的編號為1,2,n,例如,埋有地雷數量如下 8 14 2 17 33 26 15 17 19 6此時,地雷的數量可用一維陣列a n 表示。同時,給出地雷堆之間的聯絡,從第1堆開始,它指出挖了此堆之後,還可以選擇繼續往下...