C5-小面包
Posted kubab119
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C5-小面包相关的知识,希望对你有一定的参考价值。
上机通过率102/150/206,为什么大家都不做我的小面包
题目描述
又要发小面包了。这次我们有许多3*6
的小面包和6*6
的方糕,以及一个6*N
的长方形盒子,强迫症的某楠一定要把它们整齐的装到盒子里,并且要尽量装满。请问有多少总不同装法?
输入
多组数据输入。 每组一个3的倍数N(0<=N<=750)
输出
对于每组数据,输出一行,为最终计算对1000007取模得到的结果。
输入样例
3
6
输出样例
1
3
样例解释
输入为3时,只能放入一块小面包。
输入为6时,有三种情况:
(1)竖着放两块小面包
(2)横着放两块小面包
(3)放一块方糕
先放代码
#include <iostream> #include <stdio.h> #include <cstring> #include <cstdlib> #include <algorithm> #include <ctime> using namespace std; int a[300]; int main() { a[0] = 1; a[1] = 1; for(int i = 2; i < 300; i++) a[i] = (a[i-1] + 2 * a[i-2]) % 1000007; int n; while(cin>>n) { if(n==0) cout<<"1"<<endl; else cout<<a[n/3]<<endl; } return 0; }
思路
先统统除3
f(1)=1,f(2)=3
当n>3时,1*2横放,有f(n-2)种,1*2竖放,有f(n-1)种,2*2铺,有f(n-2)种,所以 f(n)=f(n-1)+2*f(n-2)
来一张丑不拉几的图
以上是关于C5-小面包的主要内容,如果未能解决你的问题,请参考以下文章
若依 vue前端 动态设置路由path不同参数 在页面容器里打开新页面(新路由),面包屑和标签页标题根据参数动态改变,面包屑多级标题,侧边栏对应菜单亮起
scratch小老鼠偷面包 电子学会图形化编程scratch等级考试二级真题和答案解析2022年9月
scratch小老鼠偷面包 电子学会图形化编程scratch等级考试二级真题和答案解析2022年9月