`要点是 记得return 函数,不然会栈溢出`
* 有一个X*Y的网格,小团要在此网格上从左上角到右下角,只能走格点且只能向右或向下走。
* 请设计一个算法,计算小团有多少种走法。给定两个正整数int x,int y,请返回小团的走法数目。
// 这是动态规划问题,也可以说是分类问题,因为只有向右,向下两种可能
var arr=readline().split(' ').map(Number);
var x=arr[0];
var y=arr[1];
// 统计组合数
var max=0;
// 写一个return 向右+向下的函数
function call(nowx,nowy){
// 已经走到最右边则只能往下
if(nowx==x){
// 如果已经走到了 就加一
if(nowy==y){
max++;
// 记得要退出函数
return;
}else{
call(nowx,nowy+1)
}
}else if(nowy==y){
// 如果走到了最下面就只能往右
call(nowx+1,y)
}else{
// 否则还没走完就可以右/下
call(nowx+1,nowy);
call(nowx,nowy+1)
}
}
call(0,0);
print(max)
算法——动态规划(一)
最新推荐文章于 2022-03-11 13:16:06 发布