当前位置: 首页 > news >正文

蓝桥杯 积木画

问题描述

小明最近迷上了积木画, 有这么两种类型的积木, 分别为 I 型(大小为 2 个单位面积) 和 L 型 (大小为 3 个单位面积):

同时, 小明有一块面积大小为 2×N 的画布, 画布由 2×N 个 1×1 区域构 成。小明需要用以上两种积木将画布拼满, 他想知道总共有多少种不同的方式? 积木可以任意旋转, 且画布的方向固定。

输入格式

输入一个整数 N,表示画布大小。

输出格式

输出一个整数表示答案。由于答案可能很大,所以输出其对 1000000007 取模后的值。

样例输入

3

样例输出

5

样例说明

五种情况如下图所示,颜色只是为了标识不同的积木:

 

评测用例规模与约定

对于所有测试用例,1≤N≤10000000.

 

本题为找规律题(不好找)

N=1时,1种

N=2时,2种

N=3时,5种

N=4时,11种

N=5时,24种

N=6时,53种

f(n) = 2 f(n-1) + f(n-3)

#include<iostream>
using namespace std;

typedef long long ll;

int n;
const int N = 1e7+10;
int mod = 1e9+7;
ll f[N] = {0, 1, 2, 5, 11};

int main()
{
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	
	cin>>n;
	
	for(int i=5; i<=n; ++i)
	{
		f[i] = (2*f[i-1] + f[i-3]) % mod;
	}
	
	cout<<f[n] % mod;
	
	return 0;
}

 

http://www.dtcms.com/a/79927.html

相关文章:

  • llama源码学习·model.py[3]ROPE旋转位置编码(4)ROPE的应用
  • Python八字排盘系统实现分析
  • flutter报错:Could not find com.meituan.android.walle:plugin
  • centos7.9 脚本一键升级到openssl-3.4.0,openssh-9.9p1
  • JSON 解析中需要清理的危险字符
  • 解析Collections工具类主要功能
  • css实现报警特效
  • 计算机技术系列博客——目录页(持续更新)
  • UVM stop_sequences详细介绍与举例(含代码示例与注意事项)
  • 【初探数据结构】树与二叉树
  • Java 反射机制
  • 织梦DedeCMS如何获得在列表和文章页获得顶级或上级栏目名称
  • Filter Solutions学习-02 【高级设计】界面介绍
  • AI图像理解技术的演进
  • AI日报 - 2025年3月21日
  • PyTorch深度学习框架60天进阶学习计划-第27天:模型量化原理(一)
  • Web-Machine-N7靶机通关攻略
  • Web-Machine-N7靶机:渗透测试与漏洞挖掘的实战利器
  • 【从古生物代谢到硅基计算:解码技术加速的深层密码
  • Spring Boot中定时任务Cron表达式的终极指南
  • 广东启动“跨境电商+产业带”系列活动 三年打造30个产业振兴样板
  • Chia币的一次尝试
  • 利用设计模式构建事件处理系统
  • 探索TouchSocket:轻松上手的高性能网络通信库
  • 笛卡尔轨迹规划之齐次变换矩阵与欧拉角、四元数的转化
  • C++进阶——红黑树的实现
  • 工厂函数详解:概念、目的与作用
  • 网站测速:提升用户体验的关键
  • 14-图论-多源最短路径Floyd算法
  • 1.5.4 掌握Scala内建控制结构 - 条件循环