动态规划练习一 移动路线

描述
×桌子上有一个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



思路:这个 一眼看过去 想到 递归 , (1,1) 到 (m , n ) 的路线的 个数 ,(1,1) 的方向 只能 向右 ,和 向上 , 路线的 和 等于 (1,2)+(2,1) ,依次 下去 ,一直到 x==m , y == n , 到达 这个边界之后 返回 1,  这个是 一条 路线 。


代码:
#if 1

#include<bits/stdc++.h>
using namespace std;
 int m , n ;
 int ok(int i ,int j) 
 
 {
 	return (  i == m || j == n ) ;
 	
 }
int fun(int x, int y) 
{
	
	  
	if(ok(x,y))  
	  return 1;
 else 
	 return fun(x+1,y) +fun (x,y+1) ;
	
}
int main()

{ 
    int  a[25][25] ; 

	 cin >> m >> n ;
	 
	 cout << fun(1,1) <<endl;
	 
	 
	
}

#endif 


### Java 开发学习路径 #### 初级阶段:掌握基础知识 在这个阶段,重点是打牢Java的基础。理解并熟练运用Java语言的核心特性,包括但不限于面向对象编程(OOP),基本的数据结构和算法[^1]。 ```java public class HelloWorld { public static void main(String[] args) { System.out.println("Hello, World!"); } } ``` 熟悉开发环境设置,安装配置JDK、IDE(如IntelliJ IDEA或Eclipse)。通过编写简单的程序来练习语法和技术要点[^3]。 #### 中级阶段:深入理解和应用 随着技能的增长,在中级阶段应该更加关注具体的框架和技术栈的应用。比如: - **后端框架**:深入了解Spring Framework尤其是Spring Boot,以及ORM框架如Hibernate。 - **数据库管理**:掌握关系型数据库(MySQL/PostgreSQL)的操作,并接触些NoSQL解决方案(MongoDB)。 - **API设计**:学会创建RESTful风格的服务接口。 此期间还应当积极参与开源项目或其他形式的实际编码任务,以此积累宝贵的实践经验[^5]。 #### 高级阶段:拓展视野与专精领域 当达到定水平之后,则可以考虑向特定方向深化研究,例如转向大数据处理等领域。此时不仅限于传统的Web应用程序构建,还可以探索分布式计算平台Hadoop生态系统下的MapReduce作业提交机制等复杂主题[^4]。 同时也要注意培养软实力方面的能力,诸如沟通技巧、团队协作精神等非技术因素同样重要。 --- ### 职业发展规划 #### 短期目标(0~2年) 集中精力夯实基础,确保对Java SE的理解透彻无误;积极参加实习机会或者小型项目的建设活动,逐步建立起个人作品集;定期复习所学知识点并通过在线课程等方式补充新知。 #### 中长期目标(3~7年) 成为某细分领域的专家,无论是专注于高性能服务器架构的设计还是移动互联网产品的研发都可以作为发展方向之;与此同时继续拓宽专业知识面,紧跟行业动态变化趋势。 #### 远景展望(8年以上) 转型为技术领导者角色,带领小组完成大型系统的规划实施工作;亦或是投身教育事业分享多年累积的经验教训给后来者提供帮助和支持。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值