題目意思:有n個飛機場,給你起點s,終點e,有m種帶權的無向邊飛機線路。有k個線路,可以從中選乙個免費飛行。問是否使用免費飛機票,並輸出最短路花費。
思路:1.先建普通飛機線路,算出最短路。再每一條免費線路重新算一次最短路,再判斷是否比之前小。
spfa寫法:
#include#includeview code#include
#include
#include
#define inf 0x3f3f3f3f
using
namespace
std;
typedef
long
long
ll;struct
nodee[
2050
];int head[1050],vis[1050],d[1050
];int
st,ed,n,m,k,cnt;
intfrom[1050],to[1050],val[1050
];void add(int u,int v,int
w)void spfa()//
spfa算最短路 }}
}}int
main()
spfa();
int ans=d[ed];//
記錄沒有用免費機票的最短路
int anss=inf;
cin>>k;
for(int i=0;i)
}if(ans==anss)
cout
<
else
cout
<
yes"
return0;
}
dijkstra寫法:
#include#includeview code#include
#include
#define inf 0x3f3f3f3f#include
using
namespace
std;
typedef
long
long
ll;struct
nodee[
2050
];struct
nd};
int head[1050],vis[1050],d[1050
];int
st,ed,n,m,k,cnt;
intfrom[1050],to[1050],val[1050
];void add(int u,int v,int
w)void dij()//
優先佇列優化
);
while(!q.empty()));}
}}
}int
main()
dij();
int ans=d[ed];
int anss=inf;
cin>>k;
for(int i=0;i)
}if(ans==anss)
cout
<
else
cout
<
yes"
return0;
}
2.開始就算出起點到所有點的最短距離和終點到所有點的最短路,在每次免費線路直接判斷是否小就可以。因為是無向邊,可以直接算終點到所有點的距離,如果是有向邊,只要反向建邊再算即可。這個思路只算了兩次最短路,明顯是上面快很多的。
#include#includeview code#include
#include
#define inf 0x3f3f3f3f#include
using
namespace
std;
typedef
long
long
ll;struct
nodee[
2050
];struct
nd};
int head[1050],vis[1050],d[1050][1050
];int
st,ed,n,m,k,cnt;
void add(int u,int v,int
w)void dij(int
start)
);
while(!q.empty()));}
}}
}int
main()
memset(d,
0x3f,sizeof
(d));
dij(st);
//算出起點到所有點的最短路。
int ans=d[st][ed];
dij(ed);
//算出終點到所有點的最短路
int anss=inf;
//for(int i=1;i<=n;i++)
//cout>k;
for(int i=0;i)
}if(!flag)
cout
<
else
cout
<
yes"
return0;
}
E 免費餡餅 HDU 1176
e 免費餡餅 hdu 1176 都說天上不會掉餡餅,但有一天gameboy正走在回家的小徑上,忽然天上掉下大把大把的餡餅。說來gameboy的人品實在是太好了,這餡餅別處都不掉,就掉落在他身旁的10公尺範圍內。餡餅如果掉在了地上當然就不能吃了,所以gameboy馬上卸下身上的揹包去接。但由於小徑兩側...
高效e人免費版2 97
高效e人是專為高效能人士準備的一款個人資訊管理軟體!她能分門別類管理您的聯絡人 通訊錄及客戶資訊,增強人脈關係 能制訂日程安排和任務計畫,跟蹤節假日 生日及紀念日,並能按您的要求及時提醒,讓工作和生活井井有條 能書寫豐富多彩的電子日記,記錄點滴心情 通過高效e人內建強大的文件編輯器,能書寫和記錄內含...
《人品免費》第三章 絕佳的比喻 飛機!
我必須在這裡謝謝克勞士比先生,他用極其通俗易懂的語言向我們展示了許多關於質量的道理 說實話,大多數質量方面的書籍讓我很頭痛,它們總是故弄玄虛地弄出一大堆深奧難懂的資料 圖表和詞彙,藉以虛張聲勢,掩蓋它們的無知和膽怯。而這世界上偏偏有另外一種人,他們另闢蹊徑,用最最淺顯生動的語言,向我們揭示著事物最原...