过河卒的题解

2025-10-14 19:19:49

1、#include<stdio.h>  

#include<stdlib.h>  

int a[30][30];  

long long f[30][30];  

void draw(int x,int y){  

    int i,j,k;  

    if(x<0 || x>20 || y<0 || y>20)  

        return;  

    else a[x][y]=1;       

}  

int main(){  

    int i,j,k,m,n,x,y;  

    scanf("%d%d%d%d",&m,&n,&x,&y);  

    draw(x,y);  

    draw(x+1,y+2);  

    draw(x+2,y+1);  

    draw(x+2,y-1);  

    draw(x+1,y-2);  

    draw(x-1,y-2);  

 帮案   draw(x-2,y-1);  

    draw(x-2,y+1);  

    draw(x-1,y+2);  

 鉴膨   for(i=1;i<=n;i++)  

      if(a[0][i]!=1)f[0][i]=1;  

        else break;  

    for(i=1;i<=m;i++)  

      if(a[i][0]!=1)f[i][0]=1;  

        else break;  

    for(i=1;i<=m;i++)  

      for(j=1;j<=n;j++)  

        if(!a[i][j])  

           f[i][j]=f[i-1][j]+f[i][j-1];  

    printf("%I64d\n",f[m][n]);  

 菌牢惹   return 0;      

}  

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
相关推荐
  • 阅读量:91
  • 阅读量:122
  • 阅读量:82
  • 阅读量:122
  • 阅读量:182
  • 猜你喜欢