{"id":149,"date":"2020-11-19T04:42:00","date_gmt":"2020-11-19T04:42:00","guid":{"rendered":"https:\/\/imwarming.com\/?p=149"},"modified":"2020-11-19T04:42:00","modified_gmt":"2020-11-19T04:42:00","slug":"%e6%9c%80%e7%9f%ad%e8%b7%af","status":"publish","type":"post","link":"https:\/\/imwarming.com\/?p=149","title":{"rendered":"\u6700\u77ed\u8def"},"content":{"rendered":"<p>bellman ford\u4e0d\u5e38\u7528\u4e0b\u9762\u6709\u5b83\u7684\u4f18\u5316spfa<\/p>\n<div class=\"cnblogs_code\">\n<pre><span style=\"color: #0000ff;\">for<\/span> (<span style=\"color: #0000ff;\">int<\/span> i = <span style=\"color: #800080;\">0<\/span>; i &lt; n; i++<span style=\"color: #000000;\">) {\n    <\/span><span style=\"color: #0000ff;\">for<\/span> (<span style=\"color: #0000ff;\">int<\/span> j = <span style=\"color: #800080;\">0<\/span>; j &lt; m; j++<span style=\"color: #000000;\">) {\n        d[v[i]] <\/span>= min(d[v[i]], d[u[i]] +<span style=\"color: #000000;\"> w[i]);\n    }\n}<\/span><\/pre>\n<\/div>\n<p>dijkstra<\/p>\n<div class=\"cnblogs_code\">\n<pre>d[s] = <span style=\"color: #800080;\">0<\/span>;<span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u81ea\u5df1\u5230\u81ea\u5df10<\/span>\n<span style=\"color: #0000ff;\">for<\/span> (<span style=\"color: #0000ff;\">int<\/span> i = <span style=\"color: #800080;\">0<\/span>; i &lt; n; i++<span style=\"color: #000000;\">) {\n    <\/span><span style=\"color: #0000ff;\">int<\/span> t = -<span style=\"color: #800080;\">1<\/span><span style=\"color: #000000;\">;\n    <\/span><span style=\"color: #0000ff;\">for<\/span> (<span style=\"color: #0000ff;\">int<\/span> j = <span style=\"color: #800080;\">0<\/span>; j &lt; n; j++<span style=\"color: #000000;\">) {\n        <\/span><span style=\"color: #0000ff;\">if<\/span> (!<span style=\"color: #000000;\">v[j]) {\n            <\/span><span style=\"color: #0000ff;\">if<\/span> (t == -<span style=\"color: #800080;\">1<\/span> || d[j] &lt;<span style=\"color: #000000;\"> d[t]) {\n                t <\/span>=<span style=\"color: #000000;\"> j;\n            }\n        }\n    }\n    v[t] <\/span>= <span style=\"color: #800080;\">1<\/span><span style=\"color: #000000;\">;\n    <\/span><span style=\"color: #0000ff;\">for<\/span><span style=\"color: #000000;\"> (each edge e of t) {\n        relax(e);<\/span><span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u677e\u5f1b<\/span>\n<span style=\"color: #000000;\">    }\n}<\/span><\/pre>\n<\/div>\n<p>floyd<\/p>\n<div class=\"cnblogs_code\">\n<pre><span style=\"color: #0000ff;\">for<\/span> (<span style=\"color: #0000ff;\">int<\/span> k = <span style=\"color: #800080;\">0<\/span>; k &lt; n; k++<span style=\"color: #000000;\">) {\n    <\/span><span style=\"color: #0000ff;\">for<\/span> (<span style=\"color: #0000ff;\">int<\/span> i = <span style=\"color: #800080;\">0<\/span>; i &lt; n; i++<span style=\"color: #000000;\">) {\n        <\/span><span style=\"color: #0000ff;\">for<\/span> (<span style=\"color: #0000ff;\">int<\/span> j = <span style=\"color: #800080;\">0<\/span>; j &lt; n; j++<span style=\"color: #000000;\">) {\n            f[i][j] <\/span>= min(f[i][j], f[i][k]+<span style=\"color: #000000;\">f[k][j])\n        }\n    }\n}<\/span><\/pre>\n<\/div>\n<p>spfa(\u6d1b\u8c37\u5927\u4f6c\u4ee3\u7801)<\/p>\n<div class=\"cnblogs_code\">\n<pre><span style=\"color: #0000ff;\">void<\/span><span style=\"color: #000000;\"> spfa()\n{\n  queue<\/span>&lt;<span style=\"color: #0000ff;\">int<\/span>&gt; q; <span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">spfa\u7528\u961f\u5217\uff0c\u8fd9\u91cc\u7528\u4e86stl\u7684\u6807\u51c6\u961f\u5217<\/span>\n  <span style=\"color: #0000ff;\">for<\/span>(<span style=\"color: #0000ff;\">int<\/span> i=<span style=\"color: #800080;\">1<\/span>; i&lt;=n; i++<span style=\"color: #000000;\">) \n  {\n    dis[i]<\/span>=inf; <span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u5e26\u6743\u56fe\u521d\u59cb\u5316<\/span>\n    vis[i]=<span style=\"color: #800080;\">0<\/span>; <span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u8bb0\u5f55\u70b9i\u662f\u5426\u5728\u961f\u5217\u4e2d\uff0c\u540cdijkstra\u7b97\u6cd5\u4e2d\u7684visited\u6570\u7ec4<\/span>\n<span style=\"color: #000000;\">  }\n  q.push(s); dis[s]<\/span>=<span style=\"color: #800080;\">0<\/span>; vis[s]=<span style=\"color: #800080;\">1<\/span>; <span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u7b2c\u4e00\u4e2a\u9876\u70b9\u5165\u961f\uff0c\u8fdb\u884c\u6807\u8bb0<\/span>\n  <span style=\"color: #0000ff;\">while<\/span>(!<span style=\"color: #000000;\">q.empty())\n  {\n    <\/span><span style=\"color: #0000ff;\">int<\/span> u=q.front(); <span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u53d6\u51fa\u961f\u9996<\/span>\n    q.pop(); vis[u]=<span style=\"color: #800080;\">0<\/span>; <span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u51fa\u961f\u6807\u8bb0<\/span>\n    <span style=\"color: #0000ff;\">for<\/span>(<span style=\"color: #0000ff;\">int<\/span> i=head[u]; i; i=edge[i].next) <span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u90bb\u63a5\u8868\u904d\u5386\uff0c\u4e0d\u591a\u89e3\u91ca\u4e86\uff08\u4e5f\u53ef\u7528vector\u4ee3\u66ff\uff09<\/span>\n<span style=\"color: #000000;\">    {\n      <\/span><span style=\"color: #0000ff;\">int<\/span> v=<span style=\"color: #000000;\">edge[i].to; \n      <\/span><span style=\"color: #0000ff;\">if<\/span>(dis[v]&gt;dis[u]+edge[i].dis) <span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u5982\u679c\u6709\u6700\u77ed\u8def\u5c31\u66f4\u6539<\/span>\n<span style=\"color: #000000;\">      {\n        dis[v]<\/span>=dis[u]+<span style=\"color: #000000;\">edge[i].dis;\n        <\/span><span style=\"color: #0000ff;\">if<\/span>(vis[v]==<span style=\"color: #800080;\">0<\/span>) <span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u672a\u5165\u961f\u5219\u5165\u961f<\/span>\n<span style=\"color: #000000;\">        {\n          vis[v]<\/span>=<span style=\"color: #800080;\">1<\/span>; <span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u6807\u8bb0\u5165\u961f<\/span>\n<span style=\"color: #000000;\">          q.push(v);\n        }\n      }\n    }\n  }\n}<\/span><\/pre>\n<\/div>\n<p>\u4f8b :&nbsp;<a href=\"https:\/\/www.luogu.org\/problemnew\/show\/p3371\">luogu p3371<\/a>&nbsp;\u9884\u5907\u77e5\u8bc6:&nbsp;<a href=\"https:\/\/blog.csdn.net\/acdreamers\/article\/details\/16902023\">\u94fe\u5f0f\u524d\u5411\u661f<\/a><\/p>\n<div class=\"cnblogs_code\">\n<pre>#include&lt;bits\/stdc++.h&gt;\n<span style=\"color: #0000ff;\">using<\/span> <span style=\"color: #0000ff;\">namespace<\/span><span style=\"color: #000000;\"> std;\ntypedef <\/span><span style=\"color: #0000ff;\">long<\/span> <span style=\"color: #0000ff;\">long<\/span><span style=\"color: #000000;\"> ll;\n<\/span><span style=\"color: #0000ff;\">const<\/span> <span style=\"color: #0000ff;\">int<\/span> maxn = 1e4 + <span style=\"color: #800080;\">5<\/span><span style=\"color: #000000;\">;\n<\/span><span style=\"color: #0000ff;\">const<\/span> <span style=\"color: #0000ff;\">int<\/span> maxm = 5e5 + <span style=\"color: #800080;\">5<\/span><span style=\"color: #000000;\">;\n<\/span><span style=\"color: #0000ff;\">const<\/span> ll inf = <span style=\"color: #800080;\">2147483647<\/span><span style=\"color: #000000;\">;\n<\/span><span style=\"color: #0000ff;\">struct<\/span><span style=\"color: #000000;\"> edge{\n    <\/span><span style=\"color: #0000ff;\">int<\/span><span style=\"color: #000000;\"> next,to,w;\n}e[maxm];\n<\/span><span style=\"color: #0000ff;\">int<\/span> head[maxn], cnt, n, m, s, vis[maxn], dis[maxn];<span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">head\u521d\u59cb\u5316\u4e3a0<\/span>\npriority_queue&lt;<span style=\"color: #0000ff;\">int<\/span>, vector&lt; pair&lt;<span style=\"color: #0000ff;\">int<\/span>, <span style=\"color: #0000ff;\">int<\/span>&gt; &gt;, greater&lt; pair&lt;<span style=\"color: #0000ff;\">int<\/span>, <span style=\"color: #0000ff;\">int<\/span>&gt; &gt; &gt;q;<span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u6700\u5c0f\u5806\uff0cdijkstra\u627e\u6700\u77ed\u8ddd\u79bb\u7684<\/span>\n<span style=\"color: #000000;\">\ninline <\/span><span style=\"color: #0000ff;\">void<\/span> add(<span style=\"color: #0000ff;\">int<\/span> u, <span style=\"color: #0000ff;\">int<\/span> v, <span style=\"color: #0000ff;\">int<\/span> w){<span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u94fe\u5f0f\u5411\u524d\u661f<\/span>\n    e[cnt].w = w;<span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u5b58\u6743\u91cd<\/span>\n    e[cnt].to =<span style=\"color: #000000;\"> v;\n    e[cnt].next <\/span>=<span style=\"color: #000000;\"> head[u];\n    head[u] <\/span>= cnt++<span style=\"color: #000000;\">;\n}\n\n<\/span><span style=\"color: #0000ff;\">void<\/span><span style=\"color: #000000;\"> dijkstra(){\n    q.push(make_pair(<\/span><span style=\"color: #800080;\">0<\/span>, s));<span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u8d77\u70b9s\u8fdb\u53bb<\/span>\n    <span style=\"color: #0000ff;\">while<\/span>(!q.empty()){<span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u7a7a\u4e86\u5c31\u5168\u641e\u597d\u4e86<\/span>\n        <span style=\"color: #0000ff;\">int<\/span> now = q.top().second;<span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u5f53\u524d\u70b9<\/span>\n        q.pop();<span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u6ca1\u7528\u4e86\u5f39\u51fa<\/span>\n        <span style=\"color: #0000ff;\">if<\/span>(!vis[now]){<span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u8981\u6ca1\u6807\u8bb0<\/span>\n            vis[now] = <span style=\"color: #800080;\">1<\/span>;<span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u6807\u8bb0\u4e86<\/span>\n            <span style=\"color: #0000ff;\">for<\/span>(<span style=\"color: #0000ff;\">int<\/span> i = head[now]; i; i = e[i].next){<span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u628a\u4e0enow\u6709\u8054\u7cfb\u7684\u90fd\u5faa\u73af\uff0ci = 0\u5c31\u6ca1\u4e86\uff0chead\u521d\u59cb\u5316\u5c31\u662f0<\/span>\n                <span style=\"color: #0000ff;\">int<\/span> v =<span style=\"color: #000000;\"> e[i].to;\n                <\/span><span style=\"color: #0000ff;\">if<\/span>(dis[v] &gt; dis[now] +<span style=\"color: #000000;\"> e[i].w){\n                    dis[v] <\/span>= dis[now] +<span style=\"color: #000000;\"> e[i].w;\n                    q.push(make_pair(dis[v], v));<\/span><span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u53d1\u73b0\u5b83\u53d8\u5c0f\u4e86\u5c31\u63a8\u8fdb\u53bb<\/span>\n<span style=\"color: #000000;\">                }\n            }\n        }\n    }\n}\n\n<\/span><span style=\"color: #0000ff;\">int<\/span><span style=\"color: #000000;\"> main(){\n    <\/span><span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">ios_base::sync_with_stdio(0);\n    <\/span><span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">cin.tie(); cout.tie();<\/span>\n    cin&gt;&gt;n&gt;&gt;m&gt;&gt;<span style=\"color: #000000;\">s;\n    <\/span><span style=\"color: #0000ff;\">int<\/span><span style=\"color: #000000;\"> x, y, z;\n    <\/span><span style=\"color: #0000ff;\">for<\/span>(<span style=\"color: #0000ff;\">int<\/span> i = <span style=\"color: #800080;\">1<\/span>; i &lt;= m; i++<span style=\"color: #000000;\">){\n        cin<\/span>&gt;&gt;x&gt;&gt;y&gt;&gt;<span style=\"color: #000000;\">z;\n        add(x, y, z);<\/span><span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u94fe\u5f0f\u5411\u524d\u661f<\/span>\n<span style=\"color: #000000;\">    }\n    <\/span><span style=\"color: #0000ff;\">for<\/span>(<span style=\"color: #0000ff;\">int<\/span> i = <span style=\"color: #800080;\">1<\/span>; i &lt;= n; i++<span style=\"color: #000000;\">)\n        dis[i] <\/span>= inf;<span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u521d\u59cb\u5316<\/span>\n    dis[s] = <span style=\"color: #800080;\">0<\/span>;<span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u81ea\u5df1<\/span>\n<span style=\"color: #000000;\">    dijkstra();\n    <\/span><span style=\"color: #0000ff;\">for<\/span>(<span style=\"color: #0000ff;\">int<\/span> i = <span style=\"color: #800080;\">1<\/span>; i &lt;= n; i++<span style=\"color: #000000;\">){\n        cout<\/span>&lt;&lt;dis[i]&lt;&lt;<span style=\"color: #800000;\">'<\/span> <span style=\"color: #800000;\">'<\/span><span style=\"color: #000000;\">;\n    }\n    <\/span><span style=\"color: #0000ff;\">return<\/span> <span style=\"color: #800080;\">0<\/span><span style=\"color: #000000;\">;\n}<\/span><\/pre>\n<\/div>\n<p>\u4f8b \uff1a<a href=\"https:\/\/www.luogu.org\/problemnew\/show\/p1821\">luogu p1821<\/a>&nbsp;\u6b63\u53cd\u4e24\u6b21\u6700\u77ed\u8def\uff08\u5927\u4f6c\u4ee3\u7801\uff09<\/p>\n<div class=\"cnblogs_code\">\n<pre>#include&lt;iostream&gt;<span style=\"color: #000000;\">\n#include<\/span>&lt;cstdio&gt;<span style=\"color: #000000;\">\n#include<\/span>&lt;cstring&gt;<span style=\"color: #000000;\">\n#include<\/span>&lt;queue&gt;<span style=\"color: #000000;\">\n#include<\/span>&lt;vector&gt;\n<span style=\"color: #0000ff;\">using<\/span> <span style=\"color: #0000ff;\">namespace<\/span><span style=\"color: #000000;\"> std;\n<\/span><span style=\"color: #0000ff;\">struct<\/span><span style=\"color: #000000;\"> edge\n{\n    <\/span><span style=\"color: #0000ff;\">int<\/span><span style=\"color: #000000;\"> u,v;    \n};\n\nvector<\/span>&lt;edge&gt; g[<span style=\"color: #800080;\">3<\/span>][<span style=\"color: #800080;\">1001<\/span>];<span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u52a8\u6001\u6570\u7ec4\u5b58\u8fb9<\/span>\n<span style=\"color: #000000;\">\nqueue<\/span>&lt;<span style=\"color: #0000ff;\">int<\/span>&gt; q;<span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u961f\u5217\uff08stl\u5927\u6cd5\u597d\uff09<\/span>\n\n<span style=\"color: #0000ff;\">int<\/span> n,m,f[<span style=\"color: #800080;\">3<\/span>][<span style=\"color: #800080;\">1001<\/span><span style=\"color: #000000;\">],l,ans;\n<\/span><span style=\"color: #0000ff;\">bool<\/span> vis[<span style=\"color: #800080;\">1001<\/span><span style=\"color: #000000;\">];\n\n<\/span><span style=\"color: #0000ff;\">void<\/span> spfa(<span style=\"color: #0000ff;\">int<\/span> k)<span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">k=1\u65f6\u6b63\u5411\u56fe\uff0ck=2\u65f6\u53cd\u5411\u56fe<\/span>\n<span style=\"color: #000000;\">{\n    memset(vis,<\/span><span style=\"color: #800080;\">0<\/span>,<span style=\"color: #0000ff;\">sizeof<\/span>(vis));<span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u521d\u59cb\u5316false<\/span>\n    vis[l]=<span style=\"color: #0000ff;\">true<\/span><span style=\"color: #000000;\">;\n    f[k][l]<\/span>=<span style=\"color: #800080;\">0<\/span><span style=\"color: #000000;\">;\n    q.push(l);\n    <\/span><span style=\"color: #0000ff;\">while<\/span>(!<span style=\"color: #000000;\">q.empty())\n    {\n        <\/span><span style=\"color: #0000ff;\">int<\/span> news=<span style=\"color: #000000;\">q.front();\n        q.pop();\n        vis[news]<\/span>=<span style=\"color: #0000ff;\">false<\/span><span style=\"color: #000000;\">;\n        <\/span><span style=\"color: #0000ff;\">for<\/span>(<span style=\"color: #0000ff;\">int<\/span> i=<span style=\"color: #800080;\">0<\/span>;i&lt;g[k][news].size();i++<span style=\"color: #000000;\">)\n        {\n            <\/span><span style=\"color: #0000ff;\">int<\/span> v=g[k][news][i].v,u=<span style=\"color: #000000;\">g[k][news][i].u;\n            <\/span><span style=\"color: #0000ff;\">if<\/span>(f[k][v]&gt;f[k][news]+<span style=\"color: #000000;\">u)\n            {\n                f[k][v]<\/span>=f[k][news]+<span style=\"color: #000000;\">u;\n                <\/span><span style=\"color: #0000ff;\">if<\/span>(!<span style=\"color: #000000;\">vis[v])\n                {\n                    vis[v]<\/span>=<span style=\"color: #0000ff;\">true<\/span><span style=\"color: #000000;\">;\n                    q.push(v);\n                }\n            }\n        }\n    }\n}\n\n<\/span><span style=\"color: #0000ff;\">int<\/span><span style=\"color: #000000;\"> main()\n{\n    scanf(<\/span><span style=\"color: #800000;\">\"<\/span><span style=\"color: #800000;\">%d%d%d<\/span><span style=\"color: #800000;\">\"<\/span>,&amp;n,&amp;m,&amp;<span style=\"color: #000000;\">l);\n    memset(f,<\/span><span style=\"color: #800080;\">0x3f3f3f<\/span>,<span style=\"color: #0000ff;\">sizeof<\/span><span style=\"color: #000000;\">(f));\n    <\/span><span style=\"color: #0000ff;\">for<\/span>(<span style=\"color: #0000ff;\">int<\/span> a=<span style=\"color: #800080;\">1<\/span>;a&lt;=m;a++<span style=\"color: #000000;\">)\n    {\n        <\/span><span style=\"color: #0000ff;\">int<\/span><span style=\"color: #000000;\"> x,y,z;\n        scanf(<\/span><span style=\"color: #800000;\">\"<\/span><span style=\"color: #800000;\">%d%d%d<\/span><span style=\"color: #800000;\">\"<\/span>,&amp;x,&amp;y,&amp;<span style=\"color: #000000;\">z);\n        edge cmp;\n        cmp.v<\/span>=<span style=\"color: #000000;\">y;\n        cmp.u<\/span>=<span style=\"color: #000000;\">z;\n        g[<\/span><span style=\"color: #800080;\">1<\/span>][x].push_back(cmp);<span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u6b63\u5411\u5efa\u56fe<\/span>\n        cmp.v=<span style=\"color: #000000;\">x;\n        g[<\/span><span style=\"color: #800080;\">2<\/span>][y].push_back(cmp);<span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u53cd\u5411\u5efa\u56fe<\/span>\n<span style=\"color: #000000;\">    }\n    spfa(<\/span><span style=\"color: #800080;\">1<\/span>);<span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u8dd1\u6b63\u5411\u56fe<\/span>\n    spfa(<span style=\"color: #800080;\">2<\/span>);<span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u8dd1\u53cd\u5411\u56fe<\/span>\n    <span style=\"color: #0000ff;\">for<\/span>(<span style=\"color: #0000ff;\">int<\/span> a=<span style=\"color: #800080;\">1<\/span>;a&lt;=n;a++<span style=\"color: #000000;\">)\n    {\n        <\/span><span style=\"color: #0000ff;\">if<\/span>(a==<span style=\"color: #000000;\">l)\n        {\n            <\/span><span style=\"color: #0000ff;\">continue<\/span><span style=\"color: #000000;\">;\n        }\n        ans<\/span>=max(f[<span style=\"color: #800080;\">1<\/span>][a]+f[<span style=\"color: #800080;\">2<\/span>][a],ans);<span style=\"color: #008000;\">\/\/<\/span><span style=\"color: #008000;\">\u627e\u6700\u957f\u7684<\/span>\n<span style=\"color: #000000;\">    }\n    printf(<\/span><span style=\"color: #800000;\">\"<\/span><span style=\"color: #800000;\">%dn<\/span><span style=\"color: #800000;\">\"<\/span><span style=\"color: #000000;\">,ans);\n    <\/span><span style=\"color: #0000ff;\">return<\/span> <span style=\"color: #800080;\">0<\/span><span style=\"color: #000000;\">;\n}<\/span><\/pre>\n<\/div>\n<p>\u6b63\u5411\u5efa\u5c31\u662f\u6c42\u5404\u70b9\u5230\u7ec8\u70b9\u6700\u77ed\u8def\uff0c\u53cd\u5411\u5efa\u6c42\u7ec8\u70b9\u5230\u5404\u70b9\u6700\u77ed\u8def<\/p>\n","protected":false},"excerpt":{"rendered":"<p>bellman ford\u4e0d\u5e38\u7528\u4e0b\u9762\u6709\u5b83\u7684\u4f18\u5316spfa for (int i = 0; i &lt;  [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-149","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v18.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>\u6700\u77ed\u8def - imwarming<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/imwarming.com\/?p=149\" \/>\n<meta property=\"og:locale\" content=\"zh_CN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u6700\u77ed\u8def - imwarming\" \/>\n<meta property=\"og:description\" content=\"bellman ford\u4e0d\u5e38\u7528\u4e0b\u9762\u6709\u5b83\u7684\u4f18\u5316spfa for (int i = 0; i &lt; [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/imwarming.com\/?p=149\" \/>\n<meta property=\"og:site_name\" content=\"imwarming\" \/>\n<meta property=\"article:published_time\" content=\"2020-11-19T04:42:00+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u4f5c\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"warming\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 \u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https:\/\/imwarming.com\/#website\",\"url\":\"https:\/\/imwarming.com\/\",\"name\":\"imwarming\",\"description\":\"\u6c38\u8fdc\u5e74\u8f7b\uff0c\u6c38\u8fdc\u70ed\u6cea\u76c8\u7736\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/imwarming.com\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"zh-Hans\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/imwarming.com\/?p=149#webpage\",\"url\":\"https:\/\/imwarming.com\/?p=149\",\"name\":\"\u6700\u77ed\u8def - imwarming\",\"isPartOf\":{\"@id\":\"https:\/\/imwarming.com\/#website\"},\"datePublished\":\"2020-11-19T04:42:00+00:00\",\"dateModified\":\"2020-11-19T04:42:00+00:00\",\"author\":{\"@id\":\"https:\/\/imwarming.com\/#\/schema\/person\/9d76869a558bac6dd0d6d58f420ee8ea\"},\"breadcrumb\":{\"@id\":\"https:\/\/imwarming.com\/?p=149#breadcrumb\"},\"inLanguage\":\"zh-Hans\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/imwarming.com\/?p=149\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/imwarming.com\/?p=149#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u9996\u9875\",\"item\":\"https:\/\/imwarming.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u6700\u77ed\u8def\"}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/imwarming.com\/#\/schema\/person\/9d76869a558bac6dd0d6d58f420ee8ea\",\"name\":\"warming\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/imwarming.com\/#personlogo\",\"inLanguage\":\"zh-Hans\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/c4a913eed88f7601b76bbf2b103472621195b6fa2f742af89b5ea185b60e7cff?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/c4a913eed88f7601b76bbf2b103472621195b6fa2f742af89b5ea185b60e7cff?s=96&d=mm&r=g\",\"caption\":\"warming\"},\"sameAs\":[\"https:\/\/imwarming.com\"],\"url\":\"https:\/\/imwarming.com\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"\u6700\u77ed\u8def - imwarming","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/imwarming.com\/?p=149","og_locale":"zh_CN","og_type":"article","og_title":"\u6700\u77ed\u8def - imwarming","og_description":"bellman ford\u4e0d\u5e38\u7528\u4e0b\u9762\u6709\u5b83\u7684\u4f18\u5316spfa for (int i = 0; i &lt; [&hellip;]","og_url":"https:\/\/imwarming.com\/?p=149","og_site_name":"imwarming","article_published_time":"2020-11-19T04:42:00+00:00","twitter_card":"summary_large_image","twitter_misc":{"\u4f5c\u8005":"warming","\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4":"3 \u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebSite","@id":"https:\/\/imwarming.com\/#website","url":"https:\/\/imwarming.com\/","name":"imwarming","description":"\u6c38\u8fdc\u5e74\u8f7b\uff0c\u6c38\u8fdc\u70ed\u6cea\u76c8\u7736","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/imwarming.com\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"zh-Hans"},{"@type":"WebPage","@id":"https:\/\/imwarming.com\/?p=149#webpage","url":"https:\/\/imwarming.com\/?p=149","name":"\u6700\u77ed\u8def - imwarming","isPartOf":{"@id":"https:\/\/imwarming.com\/#website"},"datePublished":"2020-11-19T04:42:00+00:00","dateModified":"2020-11-19T04:42:00+00:00","author":{"@id":"https:\/\/imwarming.com\/#\/schema\/person\/9d76869a558bac6dd0d6d58f420ee8ea"},"breadcrumb":{"@id":"https:\/\/imwarming.com\/?p=149#breadcrumb"},"inLanguage":"zh-Hans","potentialAction":[{"@type":"ReadAction","target":["https:\/\/imwarming.com\/?p=149"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/imwarming.com\/?p=149#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u9996\u9875","item":"https:\/\/imwarming.com\/"},{"@type":"ListItem","position":2,"name":"\u6700\u77ed\u8def"}]},{"@type":"Person","@id":"https:\/\/imwarming.com\/#\/schema\/person\/9d76869a558bac6dd0d6d58f420ee8ea","name":"warming","image":{"@type":"ImageObject","@id":"https:\/\/imwarming.com\/#personlogo","inLanguage":"zh-Hans","url":"https:\/\/secure.gravatar.com\/avatar\/c4a913eed88f7601b76bbf2b103472621195b6fa2f742af89b5ea185b60e7cff?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c4a913eed88f7601b76bbf2b103472621195b6fa2f742af89b5ea185b60e7cff?s=96&d=mm&r=g","caption":"warming"},"sameAs":["https:\/\/imwarming.com"],"url":"https:\/\/imwarming.com\/?author=1"}]}},"_links":{"self":[{"href":"https:\/\/imwarming.com\/index.php?rest_route=\/wp\/v2\/posts\/149","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/imwarming.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/imwarming.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/imwarming.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/imwarming.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=149"}],"version-history":[{"count":0,"href":"https:\/\/imwarming.com\/index.php?rest_route=\/wp\/v2\/posts\/149\/revisions"}],"wp:attachment":[{"href":"https:\/\/imwarming.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=149"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/imwarming.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=149"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/imwarming.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=149"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}