**如下
#include
#include
#include
#include
#include
#include
#include
#include
using
namespace std;
mapint>mp;
int cnt=0;
string st,ed;
int n;
struct edge
;vectorg[
20020];
struct node};
int dis[
10010];
int vis[
10010];
int ji[
10010];
int pre[
10010];
void
dij())
;while
(!q.
empty()
));}
}}}void
coutpre
(int u)
coutpre
(pre[u]);
cout<}int
main()
mp.clear()
; cin>>st>>ed;if(
!mp[st]
) mp[st]
=++cnt;
ji[cnt]=1
;if(!mp[ed]
) mp[ed]
=++cnt;
ji[cnt]=1
;for
(int i=
1;i<=n;i++))
; g[mp[t]].
push_back
((edge));
}dij()
;if(dis[mp[ed]]==
0x3f3f3f3f
)else
}return0;
}
犯了很多失誤
if(!mp[st])
mp[st]=++cnt;
if(!mp[ed])
mp[ed]=++cnt;
起點和終點可能是同乙個字串
是雙向邊
for(int i=0;i<=150;i++)
mp.clear();
cnt=0;
所有的都要清空 g清空n個點從0開始
map也要!!!!!!
cnt也要!!!!!!
map第一次map[a]=1;
第二次a不是1賦值時,會不賦值,所以要全部清空!!!!!!
多組資料啊哥,求你了。
HDU 飯卡 簡單dp
思考 就是有一張飯卡,你要把飯卡的錢變得最少,每樣菜只能買一次,那麼怎麼用才是最少的呢?當然是先減去5塊錢,剩下的錢你盡量用,然後再用你買剩的錢加上之前的五塊,再買最貴的那乙份菜,這樣就是最少的,有沒有一種01揹包的感覺,快動手試試吧!電子科大本部食堂的飯卡有一種很詭異的設計,即在購買之前判斷餘額。...
hdu1034 簡單模擬
這裡開乙個二維陣列,num 105 2 我也不知道n有多少,隨便開的,那麼這裡num i 0 表示當前 第 i 個人擁有的糖果數,num i 1 表示他上面乙個人分給他的糖果數,具體實現見 注釋 這裡要注意的就是 先給糖果,然後如果有人糖果數為奇數,就加1 然後再判斷是不是相等 上馬 include...
HDU2201 簡單概率
hdu2201 一日,阿波收到了一張請柬,請柬裡說在遙遠的美國將召開全球比武大會,特邀請阿波過去做嘉賓。於是他託人買了當晚的機票,阿波來到機場發現其他乘客們正準備按機票上的號碼 1,2,3,n 依次排隊上飛機,由於阿波是第一次坐飛機,所以他想先一步登機,因此他插隊第乙個登上了飛機,並且他也不看機票,...