#include <iostream>
#include <malloc.h>
using namespace std;
int m,n,i,j,k,l;
void path(int **arr,int x,int y,int level){
if(x==k && y==l){
for(i=0;i<level;i++)
cout<<"-> ";
cout<<"->("<<x<<","<<y<<")"<<endl;
return;
}
if(x==k){
for(i=0;i<level;i++)
cout<<"-> ";
cout<<"->("<<x<<","<<y<<")"<<endl;
path(arr,x,y+1,level+1);
}
if(y==l){
for(i=0;i<level;i++)
cout<<"-> ";
cout<<"->("<<x<<","<<y<<")"<<endl;
path(arr,x+1,y,level+1);
}
if(x<k && y<l){
for(i=0;i<level;i++)
cout<<"-> ";
cout<<"->("<<x<<","<<y<<")"<<endl;
path(arr,x+1,y,level+1);
for(i=0;i<level;i++)
cout<<"-> ";
cout<<"->("<<x<<","<<y<<")"<<endl;
path(arr,x,y+1,level+1);
}
}
int main(int argc,char *argv[]){
cin>>m>>n;
int **arr;
arr=(int **)malloc(sizeof(int*)*m);
for(i=0;i<m;i++){
arr[i]=(int *)malloc(sizeof(int)*n);
}
for(i=0;i<m;i++)
for(j=0;j<n;j++)
arr[i][j]=0;
i=j=0,k=m-1,l=n-1;
path(arr,i,j,0);
return 0;
}
表格最短路径打印 C++
最新推荐文章于 2024-04-26 18:46:10 发布