題意:很亂
分析:把資料處理下,dijkstra下就行了,floyd超時了,我還想著優化一下輸入,因為使用了vector和string等等,但是計算資料規模後,處理輸入的時間複雜度比floyd要低乙個數量級,看來還是要換成dijkstra了。
#include #include#include
#include
#include
#include
using
namespace
std;
const
int n = 205
;const
int inf = 0x3f3f3f3f
; int
n, m, d1, d2, a, b;
vector
vs[2
];int
mp1[n][n];
intmp2[n][n];
void conn(int mp[n], const
string & s, int
val)
}vt.push_back(t);
for (int i = 0; i < (int)vt.size(); ++i)
}}int
dis[n];
char
vis[n];
int dijkstra(int
mp[n])
}if (p == b) break
; vis[p] = 1
;
for (int j = 1; j <= n; ++j) }}
return
dis[b];
}void
solve()
for (int i = 0; i < (int)vs[1].size(); ++i)
int ans =min(dijkstra(mp1), dijkstra(mp2));
printf(ans == inf ? "
-1\n
" : "
%d\n
", ans);
}int
main()
scanf(
"%d %d %d %d
", &d1, &d2, &a, &b);
solve();
}return0;
}
HDU4544 湫湫系列故事 消滅兔子
hdu 4544 tags 資料結構,貪心 analysis 將兔子的血量從大到小排序,將箭的殺傷力從大到小排序,對於每乙個兔子血量,將比他大的殺傷力大的劍壓入優先佇列,優先佇列自己重寫,讓它每次丟擲的數為價錢最小。code include include include include using...
hdu 4544 湫湫系列故事 消滅兔子
湫湫 越減越肥!最近,失敗的湫湫為發洩心中鬱悶,在玩乙個消滅免子的遊戲。遊戲規則很簡單,用箭殺死免子即可。箭是一種消耗品,已知有m種不同型別的箭可以選擇,並且每種箭都會對兔子造成傷害,對應的傷害值分別為di 1 i m 每種箭需要一定的qq幣購買。假設每種箭只能使用一次,每只免子也只能被射一次,請計...
HDU4503 湫湫系列故事 植樹節
中文題。姑且放在數論類裡吧 有n個孩子 每個孩子有 b i 個朋友 自然有 n 1 b i 個非朋友 他自己,他的乙個朋友,他的乙個非朋友構成的組合是不滿足題意的 但是除此之外的所有組合都滿足題意 故可以通過計算不滿足的組合 對每個孩子有b i n 1 b i 個組合,這個組合累加會被他的朋友再計算...