1368 - 蜜蜂路线

题目描述

一只蜜蜂在下图所示的数字蜂房上爬动,已知它只能从标号小的蜂房爬到标号大的相邻蜂房,现在问你:蜜蜂从蜂房M开始爬到蜂房N,1≤M

输入

输入 M,N 的值。 (1≤M

输出

爬行有多少种路线。

样例

输入

1 14

输出

377

代码

#include 
using namespace std;
int n,m,t;
bool pd = 0;
int a[1000][1000];
int main(){
	cin >> m >> n;
	t = n - m;
	a[0][1] = 0;
	a[1][1] = 1;
	a[2][1] = 2;
	for(int i = 3;i <= t;i++){
		for(int j = 1;j < 600;j++) 
		a[i][j] = a[i - 1][j] + a[i - 2][j];
		for(int j = 1;j < 600;j++){
			while(a[i][j] > 9){
				a[i][j + 1]++;
				a[i][j] -= 10;
			}
		}
	}
	for(int i = 600;i > 1;i--){
		if(!pd && a[t][i] == 0){
			continue;
		}
		pd = 1;
		cout << a[t][i];
	}
	cout << a[t][1];
	return 0;
}

 记得点赞+关注+收藏!!!谢谢!!!

你可能感兴趣的:(算法,c++)