洛谷 P2437 蜜蜂路线
2024-09-25 03:01:37
题目描述
一只蜜蜂在下图所示的数字蜂房上爬动,已知它只能从标号小的蜂房爬到标号大的相邻蜂房,现在问你:蜜蜂从蜂房M开始爬到蜂房N,M<N,有多少种爬行路线?
输入输出格式
输入格式:
输入M,N的值
输出格式:
爬行有多少种路线
输入输出样例
说明
对于100%的数据,M,N\le 1000M,N≤1000
思路:斐波那契。
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
int n,m;
struct nond{
int num[];
}f[];
void jia(int pos){
f[pos].num[]=max(f[pos-].num[],f[pos-].num[]);
for(int i=;i<=f[pos].num[];i++)
f[pos].num[i]=f[pos-].num[i]+f[pos-].num[i];
for(int i=;i<=f[pos].num[];i++)
if(f[pos].num[i]>=){
if(i==f[pos].num[]) f[pos].num[]++;
f[pos].num[i+]+=;
f[pos].num[i]%=;
}
for(;f[pos].num[]>=;f[pos].num[]--) if(f[pos].num[f[pos].num[]]) break;
}
int main(){
scanf("%d%d",&m,&n);
n-=m;
if(n==){ cout<<"";return ;}
f[].num[]=f[].num[]=f[].num[]=f[].num[]=;
for(int i=;i<=n;i++) jia(i);
for(int i=f[n].num[];i>=;i--) cout<<f[n].num[i];
}
最新文章
- 安装jhipster
- Nancy之ModelBinding(模型绑定)
- lsof 解决无法删除文件夹问题
- ";504 Gateway Time-out";
- 编写spring配置文件时,不能出现帮助信息
- Redis的过滤器(SCAN)功能
- python windows错误码
- mysql的SQL_CALC_FOUND_ROWS 使用
- 为什么 HTTP 有时候比 HTTPS 好?
- java学习笔记 (2) —— Struts2类型转换、数据验证重要知识点
- HDU 3306 - Another kind of Fibonacci
- 浅谈聚类算法(K-means)
- Power Designer如何批量改动数据类型
- 【全网最全的博客美化系列教程】02.添加QQ交谈链接
- openfire接收离线消息
- ";cni0"; already has an IP address different from 10.244.2.1/24。 Error while adding to cni network: failed to allocate for range 0: no IP addresses available in range set: 10.244.2.1-10.244.2.254
- Video.js 简单的使用介绍
- 对MVC模型的自悟,详尽解释,为了更多非计算机人员可以理解
- ILA用法
- Chat Server&#39;s Outgoing Traffic