nyoj 973 天下第一(SPFA判斷負環)

2021-07-09 17:52:39 字數 1321 閱讀 8704

時間限制:

1000 ms  |  記憶體限制:

65535 kb

難度:3 描述

ac_grazy一直對江湖羨慕不已,嚮往著大碗吃肉大碗喝酒的豪情,但是「人在江湖漂,怎能

不挨刀",」

人在江湖身不由己",如果自己的武功太差,在江湖會死的很慘,但是ac_grazy沒有

武功秘籍練不了絕世武功.有道是「山重水複疑無路,柳暗花明又一村」,在ac_grazy家裡面

竟然藏著一本書

,書名竟然叫做【超級外掛程式】,竟然能在各種武功之間進行轉化,據說是他爺

爺的爺爺的...爺爺傳下來的...

閒著無事便拿來看看,只看一眼便再也停不下了,只見上面寫著「縱橫武林打遍天下無敵手武功心法秘籍收錄」.

翻開第一篇一看竟然是【降龍十八掌】...

心法只是乙個修練武功的途徑,重要的是真氣的多少,於是他便想利用外掛程式讓武功之間進行轉

化,來讓真氣無限增加,但是這個心法只能按照順序轉化,我們分別用 1號和2號來代替兩種** 當然轉化會有一定的轉化率f

比如1 0.5 2 

便是把 

1的一半真氣轉化給

2 ,為了簡化問題,我們每次都從

1號秘籍開始進行轉化

,如果其中乙個秘籍轉化斷了,那麼以後的**就不能轉換。

輸入

輸入:首先輸入乙個數 t(t<=20)表示t組資料

然後輸入兩個數n(2<=n<=500)和m(1==u>0) 轉化率 f (0輸出

輸出:如果可以無限增加真氣輸出yes否則輸出no.

樣例輸入

2

3 31 2 2

2 2 3

3 2 1

4 31 2 2

3 2 4

4 2 3

樣例輸出

yes

no

上傳者

acm_王亞龍

#include#include#include#include#includeusing namespace std;

struct node

edge[2020];

int head[2020];

double dis[2020];

bool vis[1010];

int used[1010];

int m,n,cnt;

bool spfa(int sx)

}} }

return false;

}int main()

if(spfa(1))

cout<<"yes"<

nyoj973天下第一

天下第一 時間限制 1000 ms 記憶體限制 65535 kb 難度 3 描述ac grazy一直對江湖羨慕不已,嚮往著大碗吃肉大碗喝酒的豪情,但是 人在江湖漂,怎能 不挨刀 人在江湖身不由己 如果自己的武功太差,在江湖會死的很慘,但是ac grazy沒有 武功秘籍練不了絕世武功.有道是 山重水複...

NYOJ 973 天下第一(SPFA判環)

天下第一 時間限制 1000 ms 記憶體限制 65535 kb 難度 3 描述 ac grazy一直對江湖羨慕不已,嚮往著大碗吃肉大碗喝酒的豪情,但是 人在江湖漂,怎能 不挨刀 人在江湖身不由己 如果自己的武功太差,在江湖會死的很慘,但是ac grazy沒有 武功秘籍練不了絕世武功.有道是 山重水...

NYOJ973天下第一 最長路判環

題目鏈結 注意 如果可以無限 增加真氣輸出yes否則輸出no 我直接忽略了這一點,以為只要能一直流傳就可以了,只要這個圖是個強連通圖就行了,以為轉化率是沒用的資料。第一次是提交也不提示wc,一直提示的runtime我也找不到 錯了。最後看了下同學的才發現我理解錯題意了,學到了新知識,用spfa判環,...