1194:移动路线

【题目描述】

X桌子上有一个m行n列的方格矩阵,将每个方格用坐标表示,行坐标从下到上依次递增,列坐标从左至右依次递增,左下角方格的坐标为(1,1),则右上角方格的坐标为(m,n)。

小明是个调皮的孩子,一天他捉来一只蚂蚁,不小心把蚂蚁的右脚弄伤了,于是蚂蚁只能向上或向右移动。小明把这只蚂蚁放在左下角的方格中,蚂蚁从

左下角的方格中移动到右上角的方格中,每步移动一个方格。蚂蚁始终在方格矩阵内移动,请计算出不同的移动路线的数目。

对于1行1列的方格矩阵,蚂蚁原地移动,移动路线数为1;对于1行2列(或2行1列)的方格矩阵,蚂蚁只需一次向右(或向上)移动,移动路线数也为1……对于一个2行3列的方格矩阵,如下图所示:

(2,1) (2,2) (2,3)
(1,1) (1,2) (1,3)

蚂蚁共有3种移动路线:

路线1:(1,1) → (1,2) → (1,3) → (2,3)

路线2:(1,1) → (1,2) → (2,2) → (2,3)

路线3:(1,1) → (2,1) → (2,2) → (2,3)

【输入】

输入只有一行,包括两个整数m和n(0 < m+n ≤ 20),代表方格矩阵的行数和列数,m、n之间用空格隔开。

【输出】

输出只有一行,为不同的移动路线的数目。

【输入样例】

2 3

【输出样例】

3

第一种:递归

#include<bits/stdc++.h>
using namespace std;
int sum(int x,int y)
{if(x==0||y==0) return 0;//返回到0时,没路线if(x==1||y==1) return 1;//行或列是1时,是1种方法if(x==1&&y==1) return 1;//行列都是1时,也是1种方法return sum(x-1,y)+sum(x,y-1);//向上,或是向右移动一下的和
}
int main()
{int n,k;scanf("%d %d",&n,&k);printf("%d",sum(n,k));return 0;}

第二种:递推

#include<bits/stdc++.h>
using namespace std;
/*int sum(int x,int y)
{if(x==0||y==0) return 0;if(x==1||y==1) return 1;if(x==1&&y==1) return 1;return sum(x-1,y)+sum(x,y-1);
}*/
int main()
{int n,k;int num[22][22];//开得足够大for(int i=0;i<22;i++)//行1,列1都放1,表示1种方法{num[i][1]=1;num[1][i]=1;}for(int j=2;j<22;j++)//两重循环
{for(int i=2;i<22;i++)//内循环{num[i][j]=num[i-1][j]+num[i][j-1];//每个格的路线
//是下格的路线加上从左方来的路线和}
}scanf("%d %d",&n,&k);printf("%d",num[n][k]);return 0;}

信息学奥赛 一本通:1194:移动路线相关推荐

  1. 信息学奥赛一本通 1194:移动路线 | OpenJudge NOI 2.6 2718:移动路线

    [题目链接] ybt 1194:移动路线 OpenJudge NOI 2.6 2718:移动路线 [题目考点] 1. 坐标型动态规划 [解题思路] 解法1:递推 设状态数组dp,dp[i][j]表示从 ...

  2. 信息学奥赛一本通(基础算法与数据结构-题解汇总目录)

    信息学奥赛一本通(C++版)在线评测系统 基础(二)基础算法   更新中...... 第一章高精度计算 1307[例1.3]高精度乘法 1308[例1.5]高精除 1309[例1.6]回文数(Noip ...

  3. 经典问题的另类解法——以信息学奥赛一本通c++版1216红与黑为例

    题目链接:信息学奥赛一本通(C++版)在线评测系统 (ssoier.cn) 题目描述: 有一间长方形的房子,地上铺了红色.黑色两种颜色的正方形瓷砖.你站在其中一块黑色的瓷砖上,只能向相邻的黑色瓷砖移动 ...

  4. 信息学奥赛一本通在线提交地址

    信息学奥赛一本通 1 C++语言入门 1.1 综合 1.1.1 P1458 地球人口承载力估计 正确: 770 提交: 1794 比率: 42.92 % 1.1.2 P1686 Hello, Worl ...

  5. 信息学奥赛一本通(C++版)NOIP提高组(1820-1829)

    信息学奥赛一本通(C++版)NOIP提高组目录 //1820 [题目描述] 我们可以用这样的方式来表示一个十进制数:将每个阿拉伯数字乘以一个以该数字所 处位置的(值减1)为指数,以10为底数的幂之和的 ...

  6. 信息学奥赛一本通 (C++)上机练习

    信息学奥赛一本通(C++)上机练习 此书为娃儿的第一本刷题书.娃儿现在四年级 ,希望他能坚持下来.特开贴加油 luogu: disangan223 第一部分 C++语言 第一章 C++语言入门 T10 ...

  7. 信息学奥赛一本通_长乐一中老师演绎“奥赛传奇”

    董永建(右一)在课堂上. 台海网5月14日讯 据福州晚报报道,长乐一中有一位"传奇"老师--15年来,他辅导的学生在全国高中生信息学奥赛中获金牌3人次.银牌3人次.铜牌5人次:在全 ...

  8. 信息学奥赛一本通 提高篇 第5章 矩阵乘法

    例1 矩阵AXB 信息学奥赛一本通(C++版)在线评测系统 [矩阵乘法]矩阵A×B_Uletay-CSDN博客 矩阵乘法--矩阵A×B_vina的博客-CSDN博客 一本通1641[例 1]矩阵 A× ...

  9. 《信息学奥赛一本通提高篇》第6章 组合数学

    例1 计算系数(NOIP2011提高) 信息学奥赛一本通(C++版)在线评测系统 NOIP2011计算系数_nanhan27的博客-CSDN博客 「NOIP2011」 计算系数 - 组合数_TbYan ...

  10. 《信息学奥赛一本通 提高篇》

    提高篇 第一部分 基础算法 第1章 贪心算法 提高篇 第一部分 基础算法 第1章 贪心算法_青少年趣味编程-CSDN博客 提高篇 第一部分 基础算法 第1章 贪心算法 提高篇 第一部分 基础算法 第1 ...

最新文章

  1. lnmp mysql 哪个好_lamp与lnmp的选择
  2. 自动备份脚本 mysql svn
  3. java web程序 上机考试做一个登陆注册程序
  4. CSS3实现button:hover时background-color从左慢慢移动到右边
  5. 解释一下pack和unpack
  6. asp.net中前台javascript与c#函数相互调方法
  7. opencv 实现角点检测 Shi-Tomasi角点检测
  8. 卷积神经网络 第一周作业 Convolution+model+-+Application+-+v1
  9. linux安装配置samba服务,UbuntuLinux系统安装配置Samba服务
  10. 网站页面底端“本站已经安全运行XX年XX天XX秒“代码
  11. MarkDown 符号大全
  12. SQL语句:联合查询
  13. 使用Elasticsearch做向量空间内的相似性搜索
  14. Tableau——制作维恩图(交集图)
  15. ios降级鸿蒙,iOS14正式版怎么降级到iOS13.7 iOS14降级操作流程
  16. 高新技术企业认定专项审计报告包含报告?专审收费标准
  17. MPLS LDP简介-ielab
  18. phonex的使用,二级索引,预分区,调优
  19. 用智能人脸识别门禁管理工地更严谨考勤更方便
  20. 修改video标签自带按钮的默认样式

热门文章

  1. hfds_HFDS的数据写入流程
  2. 对Dilated Convolution理解
  3. 2020腾讯视频实习生面试
  4. 前端人应该知道的 Centos/Docker/Nginx/Node/Jenkins 的基本操作
  5. 《满江红》非岳飞所作?
  6. spss和python哪个好用_数据分析5大软件PK,你最爱哪个?
  7. 应用数学考研跨考计算机,数学专业考研三大方向_跨考网
  8. 爱创课堂源生javascript 共150课时
  9. 爪哇国新游记之六----抽象类
  10. 简单通用QQ/微信跳转浏览器打开代码