HDU - 2044: 一只小蜜蜂...(递推)

xiaoxiao2021-02-28  102

传送门:HDU - 2044 题意: 蜜蜂只能从左向右走,不能返回 思路:递推公式dp[i] = dp[i-2]+dp[i-1],i代表两蜂房之间的距离,即从序号为1的蜂房到序号为i+1的蜂房的线路数,只能由左边相邻的两个格子到达,把前面两个格子线路数相加就行了,这样一来,dp[b-a]就是答案了 AC代码:

#include <iostream> #include <cstdio> #define LL long long int main(){ LL dp[51]; int a, b, n; scanf("%d", &n); dp[1] = 1; dp[2] = 2; for (int i=3; i<=50; ++i ){ dp[i] = dp[i-2]+dp[i-1]; } while ( n-- ){ scanf("%d%d", &a, &b); printf("%lld\n", dp[b-a]); } return 0; }
转载请注明原文地址: https://www.6miu.com/read-83219.html

最新回复(0)