当前位置: 首页 > news >正文

马拦过河卒

棋盘上A点有一个过河卒,需要走到目标B点。卒行走的规则:可以向下、或者向右。同时在棋盘上C点有一个对方的马,该马所在的点和所有跳跃一步可达的点称为对方马的控制点。因此称之为“马拦过河卒”。
棋盘用坐标表示,A点(0,0)、B点(n,m)(n,m为不超过15的整数),同样马的位置坐标是需要给出的。现在要求你计算出卒从A点能够到达B点的路径的条数,假设马的位置是固定不动的,并不是卒走一步马走一步。

输入格式:

一行四个数据,用空格分隔,分别表示B点的坐标和马的坐标。

输出格式:

一个数据,表示所有的路径条数。

输入样例:

6 6 3 3

输出样例:

6

答案:

#include<stdio.h> int main(){ // a,b:棋盘右下角坐标(终点) // c,d:马(骑士)所在的坐标 int a,b,c,d; // 输入棋盘终点坐标、马的坐标 scanf("%d %d %d %d",&a,&b,&c,&d); // arr 用来存路径数:arr[i][j] 表示从(0,0)走到(i,j)的路径条数 int arr[20][20]={0}; // grr 标记障碍点:1 表示该位置不能走(马的位置 + 马能跳到的位置) int grr[20][20]={0}; // 先把马自己的位置标记为障碍 grr[c][d]=1; // 马走日字的8个方向偏移量 // dx[]:行偏移 dy[]:列偏移 int dx[]={1,1,-1,-1,2,2,-2,-2}; int dy[]={2,-2,2,-2,1,-1,1,-1}; // 遍历8个方向,标记马能跳到的所有位置为障碍 for(int i=0;i<8;i++){ // 计算马下一步跳到的坐标 int x = c + dx[i]; int y = d + dy[i]; // 坐标合法:在棋盘范围内 0<=x<=a 0<=y<=b if(x>=0 && x<=a && y>=0 && y<=b){ grr[x][y] = 1; // 标记为障碍物,不能走 } } // 起点(0,0)路径数初始化为1:自己到自己只有1种走法 arr[0][0] = 1; // 遍历棋盘每一个坐标点 q行 w列 for(int q=0;q<=a;q++){ for(int w=0;w<=b;w++){ // 如果当前点是障碍物,直接跳过,不计算路径 if(grr[q][w]){ continue; } // 路径递推:只能从 上方 或 左方 走过来 // 如果不是第一行,可以从上面(q-1,w)走下来 if(q>0){ arr[q][w] += arr[q-1][w]; } // 如果不是第一列,可以从左边(q,w-1)走过来 if(w>0){ arr[q][w] += arr[q][w-1]; } } } // 输出从(0,0)走到终点(a,b)的总路径数 printf("%d",arr[a][b]); return 0; }
http://www.jsqmd.com/news/779633/

相关文章:

  • 离网型风力发电机储能系统充放电控制技术
  • 四川盛世钢联国际贸易有限公司型钢频道 -H型钢|工字钢|槽钢|角钢 - 四川盛世钢联营销中心
  • 基于MCP协议为AI智能体构建可插拔技能库:Semgrep与Comby实战
  • 洛谷刷题自动化提效工具:用户脚本与本地服务集成实践
  • 我花一周测了10个降AI工具,这个是性价比最高的降AI软件! - 我要发一区
  • 视频素材太多找不到?分镜标签+语义检索,让素材管理效率提升10倍
  • Cortex-A720性能监控与嵌入式跟踪技术解析
  • Java 集合遍历时删除元素的安全写法是什么?
  • 【LSF集群搭建】9-配置远程桌面服务
  • 低频信号处理在生成式AI中的关键作用与UAE架构实践
  • 跟随教程使用Taotoken快速创建一个AI对话机器人原型
  • 【技术干货】OpenManus 智能体框架深度解析:从 Agent Loop 到本地可控 AI 工作流实战
  • OpenAI 发布三款新语音模型;Plaud 获头部大厂投资,估值达 20 亿美元;阶跃星辰将完成近 25 亿美元融资丨日报
  • 角色扮演大语言模型:从核心原理到多智能体架构的实践指南
  • 嵌入式RTOS实战:从OpenFelix内核解析到物联网数据采集系统设计
  • 海思HI3516 MIPI屏幕时序参数详解:如何用计算器搞定HBP、VFP与像素时钟
  • kagi-skills:聚合Kagi AI API的Windows桌面工具集,提升工作效率
  • HPC集群构架手册:计算节点的搭建密码
  • ARM7TDMI调试接口架构与实战技巧
  • 镇江电加热器厂家哪家好?2026年05月选购指南来袭,电加热器/翅片加热管/风道式电加热器,电加热器源头厂家有哪些 - 品牌推荐师
  • CBJQ_Unlock使用教程
  • JAVA-实战8 Redis实战项目—雷神点评(10)附近商铺
  • 内存标准演进:如何平衡性能、功耗与尺寸,塑造消费电子体验
  • 基于注意力机制的时间序列异常检测实践与优化
  • 静态分析工具smellcheck:自动检测代码坏味道,提升软件质量
  • Cursor文档自动生成钩子:基于事件驱动实现代码与文档同步
  • 【LSF集群搭建】10-部署FlexNet许可证服务器
  • Cursr:多屏多设备无缝交互的鼠标门户工具配置指南
  • 茉莉花插件:3大功能彻底解决Zotero中文文献管理难题
  • 商业信任构建:从制度、声誉到技术工具的系统性实践