狗哥做爛了最短路,突然機智的考了bosh一道,沒想到把bosh考住了...你能幫bosh解決嗎?
他會給你100000000000000000000000000000000000%10金幣w
給定n個點的帶權有向圖,求從1到n的路徑中邊權之積最小的簡單路徑。
輸入格式:
第一行讀入兩個整數n,m,表示共n個點m條邊。 接下來m行,每行三個正整數x,y,z,表示點x到點y有一條邊權為z的邊。
輸出格式:
輸出僅包括一行,記為所求路徑的邊權之積,由於答案可能很大,因此狗哥仁慈地讓你輸出它模9987的餘數即可。
廢話當然是乙個數了w
//謝fyszzhouzj指正w
對於20%的資料,n<=10。
對於100%的資料,n<=1000,m<=1000000。邊權不超過10000。
輸入樣例#1:
3 31 2 3
2 3 3
1 3 10
輸出樣例#1:
9
好好看一看再寫喲w
1 #include 2 #include 3 #include 4 #include 5 #include 6#define maxn 100001578
using
namespace
std;910
int n,m,tot,ans=1
,x,y,z;
11int
head[maxn],dis[maxn];
12bool
vis[maxn];
13struct
node
14e[maxn*3
];17
18void add(int x,int y,int
z)19
2627
void spfa(int
s)2848}
49}50}
5152
intmain()
5361 spfa(1
);62 cout<9987;63
return0;
64 }
洛谷 P2384 最短路
p2384 最短路 題目提供者bosh 標籤圖論 最短路難度普及 提高 狗哥做爛了最短路,突然機智的考了bosh一道,沒想到把bosh考住了 你能幫bosh解決嗎?他會給你100000000000000000000000000000000000 10金幣w 題目描述 給定n個點的帶權有向圖,求從1到...
洛谷P2384 最短路
題目大意 給你乙個圖,要你求出其中1 n路徑中乘積最小的一條路 題解 用 log 2 把乘法變成加法,然後記錄每個點的前驅,最後求出答案 c code include includeusing namespace std const int mod 9987 int n,m int head 101...
洛谷P2384 最短路 題解
請你求出從1到n的最短路徑,其中最短路徑 這條路經過的邊的權值的乘積。很顯然,這也是一道經典的單元最短路問題,首先我們可以考慮使用floyd,顯然,這是乙個比較無腦簡單的最短路演算法,而且包治負邊權等等。但是時間複雜度太高,可達o n3 o n 3 o n3 這道題目看起來可能是剛剛好,但據說會被卡...