频道栏目
首页 > 程序开发 > 软件开发 > C++ > 正文
有趣的数组
2013-07-10 13:48:58           
收藏   我要投稿

问题重现
根据蓝桥杯题目的简化,从”从“开始走,构成:从我做起振兴中华
从我做起振
我做起振兴
做起振兴中
起振兴中华

已知数组,如下:
 

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);
}

 

 

点击复制链接 与好友分享!回本站首页
相关TAG标签 数组
上一篇:栈的顺序存储,所谓的顺序栈
下一篇:hdu 4561 模拟小题
相关文章
图文推荐
文章
推荐
点击排行

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站