题意:在你面前有一个n阶的楼梯,你一步只能上1阶或2阶。 请计算出你可以采用多少种不同的方法上楼梯?
思路:因为到某一阶(n)只有两种可能,从第(n-1)上1阶,从第(n-2)上2阶,所以到达第(n)阶的f(n)等于f(n-1)+f(n-2)。
JS代码如下:
var readline = require('readline');
process.stdin.setEncoding('utf-8');
var rl = readline.createInterface({input: process.stdin, output: process.stdout, prompt:''});
rl.prompt();
rl.on('line', function (data) {
data=parseInt(data.trim());
let c = f(data)
process.stdout.write('' + c + '\n');
});
function f(n) {
if(n===1) {
return 1;
}
else if(n===2) {
return 2;
}else {
return f(n-1)+f(n-2)
}
}