注意邻接矩阵和路径矩阵的初始化
递归地打印路径
#include <iostream>
#include <memory.h>
#include <bits/stdc++.h>
const int IN = (1<<28);
using namespace std;
int N,E,kase;
map <string, int > m1;
map <int, string > m2;
int G[35][35];
int path[35][35];
void Print( int i, int j )
{
if( i == j )
{
cout << m2[i];
return;
}
Print(i, path[i][j]);
cout << "->(" << G[path[i][j]][j] << ")->" << m2[j];
}
int main()
{
cin >> N ;
for( int i = 1; i <= N; i++ )
{
string temp;
cin >> temp;
m1[temp] = i;
m2[i] = temp;
}
//初始化
for( int i = 1; i <= N; i++ )
for( int j = 1; j <= N; j++ )
{