BZOJ-1927-星际竞速-SDOI2010
描述
10 年一度的銀河系賽車大賽又要開(kāi)始了。作為全銀河最盛大的活動(dòng)之一, 奪得這個(gè)項(xiàng)目的冠軍無(wú)疑是很多人的夢(mèng)想,來(lái)自杰森座 α星的悠悠也是其中之一。 賽車大賽的賽場(chǎng)由 N 顆行星和M條雙向星際航路構(gòu)成,其中每顆行星都有 一個(gè)不同的引力值。大賽要求車手們從一顆與這 N 顆行星之間沒(méi)有任何航路的 天體出發(fā),訪問(wèn)這 N 顆行星每顆恰好一次,首先完成這一目標(biāo)的人獲得勝利。 由于賽制非常開(kāi)放,很多人駕駛著千奇百怪的自制賽車來(lái)參賽。這次悠悠駕 駛的賽車名為超能電驢,這是一部凝聚了全銀河最尖端科技結(jié)晶的夢(mèng)幻賽車。作 為最高科技的產(chǎn)物,超能電驢有兩種移動(dòng)模式:高速航行模式和能力爆發(fā)模式。 在高速航行模式下,超能電驢會(huì)展開(kāi)反物質(zhì)引擎,以數(shù)倍于光速的速度沿星際航 路高速航行。在能力爆發(fā)模式下,超能電驢脫離時(shí)空的束縛,使用超能力進(jìn)行空 間跳躍——在經(jīng)過(guò)一段時(shí)間的定位之后,它能瞬間移動(dòng)到任意一個(gè)行星。 天不遂人愿,在比賽的前一天,超能電驢在一場(chǎng)離子風(fēng)暴中不幸受損,機(jī)能 出現(xiàn)了一些障礙:在使用高速航行模式的時(shí)候,只能由每個(gè)星球飛往引力比它大 的星球,否則賽車就會(huì)發(fā)生爆炸。 盡管心愛(ài)的賽車出了問(wèn)題,但是悠悠仍然堅(jiān)信自己可以取得勝利。他找到了 全銀河最聰明的賢者——你,請(qǐng)你為他安排一條比賽的方案,使得他能夠用最少 的時(shí)間完成比賽。
分析
- 凡是遇到使每個(gè)點(diǎn)都經(jīng)過(guò)一次且總時(shí)間最短(長(zhǎng))的題目就可以考慮網(wǎng)絡(luò)流的最小費(fèi)用最大流. 拆點(diǎn), S向Xi連一條容量為1費(fèi)用為0的邊, Yi向T連一條容量為1費(fèi)用為0的邊, 如果i->j有邊, 就從Xi->Yj連一條容量為1費(fèi)用為路徑長(zhǎng)度的邊. 然后跑S->T最小費(fèi)用最大流, 費(fèi)用就是最短路徑長(zhǎng)度.
- 分析一下上面的過(guò)程, Yi向T的邊表示經(jīng)過(guò)了i, 因?yàn)樽畲罅魉赃@些邊一定會(huì)滿流, 而且容量為1表示只經(jīng)過(guò)一次. S向Xi的邊表示從i出發(fā), 經(jīng)過(guò)i代表著到達(dá)i再?gòu)膇離開(kāi).
- 對(duì)于題目中的瞬移, 其實(shí)不需要把所有邊全都加上, 只需要加 S->Yi 容量為1費(fèi)用為瞬移定位時(shí)間. 相當(dāng)于j高速行駛到達(dá)i的方案和瞬移到i的方案擇優(yōu). 可知如果最后S->i的邊沒(méi)有流的話, 最優(yōu)方案就是到達(dá)i之后瞬移到達(dá)其他點(diǎn).
代碼
與50位技術(shù)專家面對(duì)面20年技術(shù)見(jiàn)證,附贈(zèng)技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的BZOJ-1927-星际竞速-SDOI2010的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: BZOJ-1857-传送带-SCOI20
- 下一篇: BZOJ-3876-支线剧情-Ahoi2