上学路线

该博客探讨了一种计算从网格左上角到右下角不同路径数量的问题,其中网格由单向道路构成。通过递归和循环两种方法解决,最终给出完整C++代码实现,计算结果对1000000007取模。
摘要由CSDN通过智能技术生成

问题 A: 上学路线

时间限制: 1 Sec  内存限制: 128 MB

题目描述

小D从家到学校的道路结构是这样的:由n条东西走向和m条南北走向的道路构成了一个n*m的网格,每条道路都是单向通行的(只能从北向南,从西向东走)。
已知小D的家在网格的左上角,学校在网格的右下角。
 
问小D从他的家到学校一共有多少种不同的上学路线。

 

输入

两个正整数n和m,意义如题目所述。

 

输出

小D上学路线数量,结果队1000000007取余。

 

样例输入

复制样例数据

3 4

样例输出

10

提示

100%的数据,n,m≤1000

 

根据题意,只能往南(下)走或往东(右)走,所以每个点的路线数应该等于它上边和左边与它相邻的两个点的路线数之和,一开始用递归来写,后来意识到引用函数的次数是2的1000次方直接炸了;所以改用循环来写,只要给每个带点赋好值(根据每个点的路线数应该等于它上边和左边与它相邻的两个点的路线数之和,赋值同时取模),直接一次查询指定点就行了

 

完整代码:

#inclu

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值