| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1203 人关注过本帖
标题:[求助]这个程序杂个编
只看楼主 加入收藏
huangjinshun
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2006-4-15
收藏
 问题点数:0 回复次数:16 
[求助]这个程序杂个编

设有一个n*m的棋盘(2<=n<=50,2<=m<=50),在棋盘上任一点有一个中国象棋马,马走的规则为:
1.马走日字 2.马只能向右走
任务1:当N,M 输入之后,找出一条从左下角到右上角的路径。
例如:输入 N=4,M=4
输出:路径的格式:(1,1)->(2,3)->(4,4)
若不存在路径,则输出“no”
任务2:当N,M 给出之后,同时给出马起始的位置和终点的位置,试找出从起点到终点的所有路径的数目。
例如:(N=10,M=10),(1,5)(起点),(3,5)(终点)
输出:2(即由(1,5)到(3,5)共有2条路径)
输入格式:n,m,x1,y1,x2,y2(分别表示n,m,起点坐标,终点坐标)
输出格式:路径数目(若不存在从起点到终点的路径,输出0)

搜索更多相关主题的帖子: 起点 
2006-05-22 11:55
huangjinshun
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2006-4-15
收藏
得分:0 

杂个没有人帮忙呢!


2006-05-23 09:57
独角龙
Rank: 1
等 级:新手上路
帖 子:221
专家分:0
注 册:2006-5-5
收藏
得分:0 

奋斗改变一切!!
2006-05-23 18:41
–★–
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1512
专家分:0
注 册:2006-5-1
收藏
得分:0 
回复:(huangjinshun)中国马的走法![em08]
以下是引用huangjinshun在2006-5-23 9:57:00的发言:

个没有人帮忙呢?

几点不成熟的考虑:⑴用递归函数实现,思路显得清晰。⑵递归函数的形参越少越好,目前争取控制在3个以内。⑶尝试中的走法不急于显示出来,将它们压栈。


落霞与孤鹜齐飞,秋水共长天一色! 心有多大,路有多宽。三教九流,鸡鸣狗盗。兼收并蓄,海纳百川。
2006-05-23 22:03
–★–
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1512
专家分:0
注 册:2006-5-1
收藏
得分:0 

//Chinese horse's problem
#include<conio.h>
#include<stdio.h>

int stack[2048];
int *bottom=stack+2048;
int *SP=stack+2048;

void push(int way)
{
*--SP=way;
}
void pop(void)
{
SP++;
}

void out(void)
{
int *p=bottom-1;
do
{
printf("%d ",*p);
}
while(p-->SP);
printf("\n");
}

int X2,Y2;//(X2,Y2)为马的目标位置

horse(int x,int y)//(x,y)为入口点处马的位置
{
if(x==X2&&y==Y2){out();}
if(x<X2 && y>2){push(-2);horse(x+1,y-2);pop();}
if(x<X2-1&& y>1){push(-1);horse(x+2,y-1);pop();}
if(x<X2-1&&y<Y2){push(+1);horse(x+2,y+1);pop();}
if(x<X2&&y<Y2-1){push(+2);horse(x+1,y+2);pop();}
}

int main()
{
printf("where are you going?\n");
scanf("%d%*c%d",&X2,&Y2);
horse(1,1); //马的初始位置
getch();
return 0;
}


落霞与孤鹜齐飞,秋水共长天一色! 心有多大,路有多宽。三教九流,鸡鸣狗盗。兼收并蓄,海纳百川。
2006-05-24 05:19
–★–
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1512
专家分:0
注 册:2006-5-1
收藏
得分:0 
解释一下刚刚发表的程序。
本人将马的4种走法用代号1,-1,2,-2表示如下:
1表示横2竖进1
-1表示横2竖退1
2表示横1竖进2
-2表示横1竖退2

落霞与孤鹜齐飞,秋水共长天一色! 心有多大,路有多宽。三教九流,鸡鸣狗盗。兼收并蓄,海纳百川。
2006-05-24 05:27
huangjinshun
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2006-4-15
收藏
得分:0 

谢谢个位了啊!没想到这么快就回贴。


2006-05-24 12:40
huangjinshun
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2006-4-15
收藏
得分:0 

我看有一点意思了,如果有更好的还请多多指教。


2006-05-24 12:51
krasewallet
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2006-5-23
收藏
得分:0 

提个问题:
这个题目包括不包括入口出口两个个坐标x或y相等的情况啊


我是只小鸟,但是我想长大
2006-05-24 13:53
huangjinshun
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2006-4-15
收藏
得分:0 

是要考虑所有可能出现的情况啊!


2006-05-25 12:52
快速回复:[求助]这个程序杂个编
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.036003 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved