1.建圖 每個人物是乙個點,起點是酋長,求到每個點的最短距離中的最小值
2.注意地位高低互相不能互相交易 坑點
3列舉區間 重點
#include
#include
#include
#include
#define maxx 999999999;
using
namespace
std;
int dis[200][200],v[1000],rat[1000],a,b,sym[1000],limit;
int m,n,p,l,x;
int dijkstra(int w)
for(int i=1;i<=n;i++)
if(!sym[i]&&rat[i]>=w&&rat[i]<=w+m)
minn = maxx;
for(int i=1;i<=n;i++)
if(!sym[i]&&rat[i]>=w&&rat[i]<=w+m)
return v[1];
}int main()
for(int i=2;i<=n;i++)
}int s =maxx;
for(int k= limit-m;k<=limit;k++)
return
0;}
poj 1062 昂貴的聘禮
這個題是乙個簡單的樹形dp,只是有乙個地位差限制,可以列舉可行區間,在可行區間裡進行dp.include include include include include include include include include include includeusing namespace st...
poj1062 昂貴的聘禮
做這題代價確實很昂貴,從昨天晚上一直到今天上午都在debug,今天上午提交還出現各種wa。比較明顯的最短路,有幾個地方要注意一下,首先建圖有個地方要注意以下,這題是用臨界矩陣儲存的有向圖,而且是由交換品指向購買品,然後將虛節點設為購買品的價值,最後列舉每乙個可能地位區間di求最短路,因為對於區間 c...
昂貴的聘禮(POJ1062)
這個玩了好久啊,是我第一次寫出這樣的最短路徑。還是參考了其它人的才出來,注意的有 1 是單向圖,2 把不滿足權值的提前全初始化。其實不用topo排序也可的。關鍵 void dfs int k include include include include include include includ...