Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include<iostream>#include<queue>#include<string.h>using namespace std;int ma[210][210];int a[210];int path[210];int findPath(int n){queue<int> q;q.push(0);memset(a, 0, sizeof(a));memset(path, 0, sizeof(path));a[0] = 2147483647;while (!q.empty()){int u = q.front();if (u == n) return a[n];q.pop();for (int v = 0; v <= n; v++){if (!a[v] &&ma[u][v] > 0){path[v] = u;a[v] = a[u] < ma[u][v] ? a[u] : ma[u][v];q.push(v);}}}return 0;}