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

洛谷 P1644 跳马问题 C语言

题目:

P1644 跳马问题 - 洛谷 | 计算机科学教育新生态

题目背景

在爱与愁的故事第一弹第三章出来前先练练四道基本的回溯/搜索题吧……

题目描述

中国象棋半张棋盘如图 1 所示。马自左下角 (0,0) 向右上角 (m,n) 跳。规定只能往右跳,不准往左跳。比如图 1 中所示为一种跳行路线,并将路径总数打印出来。

输入格式

只有一行:两个数 n,m。

输出格式

只有一个数:总方案数 total。

输入输出样例

输入 #1复制

4 8

输出 #1复制

37

说明/提示

对于 100% 的数据:n,m≤18

思路:

题目求的是从(0,0)到(m,n)的所有方案和,所以我们使用方向数组模拟马右跳,用计数器计数,处理好边界即可。

代码如下:

#include<iostream>
using namespace std;
typedef long long ll;
int cnt = 0;
int dx[] = {1,2,2,1};//长 
int dy[] = {2,1,-1,-2};//宽 
int n,m;
void dfs(int x,int y)
{if(x == m && y == n){cnt++;return;}for(int i = 0 ; i < 4 ; i++){int tx = x + dx[i];int ty = y + dy[i];if(tx >= 0 && tx <= m && ty >= 0 && ty <= n)dfs(tx,ty);}
}
int main()
{ios :: sync_with_stdio(0);cin.tie(0);cout.tie(0); cin >> n >> m;dfs(0,0);cout << cnt << '\n';return 0;}

http://www.lryc.cn/news/507925.html

相关文章:

  • 每天40分玩转Django:实操在线商城
  • Bug解决!ImportError: cannot import name MutableMapping from collections
  • 【Rust自学】4.5. 切片(Slice)
  • 医学图像 三维重建,原图与灰度图叠加,原图与多图叠加显示;多图像融合显示,彩色灰度图像融合
  • 递归实现指数型枚举(递归)
  • Unity实现Root Motion动画的Navigation自动导航
  • [react]不能将类型“string | undefined”分配给类型“To”。 不能将类型“undefined”分配给类型“To”
  • python实现基于RPC协议的接口自动化测试
  • 如何使用PSQL Tool还原pg数据库(sql格式)
  • uni-app商品搜索页面
  • 【深度学习】零基础介绍循环神经网络(RNN)
  • 青少年编程与数学 02-004 Go语言Web编程 13课题、模板引擎
  • 如何优雅的关闭GoWeb服务器
  • AI程序员,开源的Devin,OpenHands 如何使用HuggingFace Inference API
  • 【动手学运动规划】 5.2 数值优化基础:梯度下降法,牛顿法
  • 电子应用设计方案66:智能打印机系统设计
  • iClient3D for Cesium 实现限高分析
  • AI开发:使用支持向量机(SVM)进行文本情感分析训练 - Python
  • torch.unsqueeze:灵活调整张量维度的利器
  • 【WRF教程第3.1期】预处理系统 WPS 详解:以4.5版本为例
  • SD ComfyUI工作流 根据图像生成线稿草图
  • 挑战一个月基本掌握C++(第六天)了解函数,数字,数组,字符串
  • git中的多人协作
  • 解决新安装CentOS 7系统mirrorlist.centos.org can‘t resolve问题
  • RK3588 , mpp硬编码yuv, 保存MP4视频文件.
  • Elasticsearch:什么是查询语言?
  • 均值聚类算法
  • MySQL 中快速插入大量数据
  • 腾讯云智能结构化OCR:以多模态大模型技术为核心,推动跨行业高效精准的文档处理与数据提取新时代
  • 最大似然检测在通信解调中的应用