問題重現
根據藍橋杯題目的簡化,從”從“開始走,構成:從我做起振興中華
從我做起振
我做起振興
做起振興中
起振興中華
已知數組,如下:
int arr[SIZE][SIZE]={ {0,1,2,3,4}, {1,2,3,4,5}, {2,3,4,5,6}, {3,4,5,6,7} }; int arr[SIZE][SIZE]={ {0,1,2,3,4}, {1,2,3,4,5}, {2,3,4,5,6}, {3,4,5,6,7} };
請試圖去尋找一條軌跡(橫走或者豎走,不允許按對角線走),軌跡為:01234567,求一共有多少種走法?
?//解法一:遞歸實現 #include<stdio.h> #define SIZE 5 int count=0; void fun(int i,int j,int deep){ if(deep==8){ count++; return; } if(i<SIZE-2){ //行 fun(i+1,j,deep+1); } if(j<SIZE-1){ //列 fun(i,j+1,deep+1); } } void main(){ fun(0,0,1); printf("%d\n",count); } //解法一:遞歸實現 #include<stdio.h> #define SIZE 5 int count=0; void fun(int i,int j,int deep){ if(deep==8){ count++; return; } if(i<SIZE-2){ //行 fun(i+1,j,deep+1); } if(j<SIZE-1){ //列 fun(i,j+1,deep+1); } } void main(){ fun(0,0,1); printf("%d\n",count); }