下载此文档

商人过河C语言代码.doc


文档分类:IT计算机 | 页数:约3页 举报非法文档有奖
1/3
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/3 下载此文档
文档列表 文档介绍
#include<>
int a[300][2],z;
int m,n,p;
int ifok1(int x1,int y1,int x2,int y2)
{
if(x1>=y1 && x2>=y2) return 1;
else if(x2==0) return 1;
else if(x1==0) return 1;
return 0;
}
int ifok2(int n,int x,int y)
{
if(n%2==0)
for(int i=0;i<n;i+=2)
if(x==a[i][0] && y==a[i][1])
return 0;
if(n%2==1)
for(int i=1;i<n;i+=2)
if(x==a[i][0] && y==a[i][1])
return 0;
return 1;
}
void fun(int x1,int y1,int x2,int y2,int time)
{
int i,j;

if(ifok1(x1,y1,x2,y2) && ifok2(time,x1,y1))
{
a[time][0]=x1;
a[time][1]=y1;
}

else return;



if(x1==0 && y1==0)
{
printf("第%d种方法:\n",z+1);
printf("(%d,%d)\n",m,n);
for(i=1;i<=time;i++)
printf("(%d,%d)\n",a[i][0],a[i][1]);
printf("\n");
z++;
return;
}

else if(time%2==0)
{
for(i=p;i>=1;i--)
for(j=0;j<=i;j++)
{
if(x2+j<=n && y2+(i-j)<=m)
fun(x1-j,y1-(i-j),x2+j,y2+(i-j),time+1);
}
}


else if(time%2==1)
{

商人过河C语言代码 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数3
  • 收藏数0 收藏
  • 顶次数0
  • 上传人文库旗舰店
  • 文件大小24 KB
  • 时间2020-11-29
最近更新