蓝桥杯每日一题2023.9.25

news2025/1/4 19:07:44

4406. 积木画 - AcWing题库 

题目描述

分析

 在完成此问题前可以先引入一个新的问题

291. 蒙德里安的梦想 - AcWing题库

我们发现16的二进制是 10000

15的二进制是1111

故刚好我们可以从0枚举到1 << n(相当于二的n次方的二进制表示)

 

注:奇数个0是非法的 

此处i的变化记录的是每一个状态,

这里的i每次>>j 是来记录i这个状态中0和1的个数,如果在这个过程中i是1就要看前面记录的0的个数,如果0的个数是奇数,那就会是1101这种类似状态故一定不符合事实

 

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N = 12, M = 1 << N;
ll n, m, f[N][M];
bool st[N];
int main()
{
    ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
	while(cin >> n >> m)
	{
		if(n == 0 && m == 0)break;
		for(int i = 0; i < 1 << n; i ++)
		{
			st[i] = true;
			int cnt = 0;
			for(int j = 0; j < n; j ++)
			{
				if(i >> j & 1)
				{
					if(cnt & 1)
					{
						st[i] = false;
						break;
					}
				}
				else cnt ++;
			}
			if(cnt & 1)st[i] = false;//eg.0100
		}
		memset(f, 0, sizeof f);
		f[0][0] = 1;
		for(int i = 1; i <= m; i ++)
		{
			for(int j = 0; j < 1 << n; j ++)
			{
				for(int k = 0; k < 1 << n; k ++)
				{
					if((j & k) == 0 && st[j | k])
					{
						f[i][j] += f[i - 1][k];
					}
				}
			} 
		}
		cout << f[m][0] << '\n';
	}
	return 0;
}

题目分析

发现一共有16种转移状态

DP[i][j]表示已经操作完i - 1列且第i列的状态为j的所有方案的集合

#include<bits/stdc++.h>
using namespace std;
const int N = 1e7 + 10;
const int mod = 1000000007;

int g[4][4] = 
{
	{1, 1, 1, 1},
	{0, 0, 1, 1},
	{0, 1, 0, 1},
	{1, 0, 0, 0}, 	
};
int dp[N][4];
int main()
{
	int n;
	cin >> n;
	dp[1][0] = 1;
	for(int i = 1; i <= n; i ++)//枚举列数 
	{
		for(int j = 0; j < 4; j ++)//从j状态转移到k状态 
		{
			for(int k = 0; k < 4; k ++)//表示向k状态转移 
			{
				dp[i + 1][k] = (dp[i + 1][k] + g[j][k] * dp[i][j]) % mod;
			}
		}
	}
	cout << dp[n + 1][0];
	return 0;
}

列举此位置的所有状态(j)每次乘上可以转化为的所有状态(k),然后不断将此位置的所有状态相加得到此位置的所有状态,最后输出最后一列(n)且下一列所有状态为0,也就是没有伸出的一列

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1040748.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

学生用什么光的灯最好?2023最适合学生用的台灯推荐

学生当然用全光谱的台灯最好。全光谱台灯主要还是以护眼台灯为主&#xff0c;因为不仅色谱丰富&#xff0c;贴近自然色的全光谱色彩&#xff0c;通常显色指数都能达到Ra95以上&#xff0c;显色能力特别强&#xff0c;而且还具有其他防辐射危害、提高光线舒适度的特性&#xff0…

Unity之Hololens如何实现传送功能

一.前言 什么是Hololens? Hololens是由微软开发的一款混合现实头戴式设备,它将虚拟内容与现实世界相结合,为用户提供了沉浸式的AR体验。Hololens通过内置的传感器和摄像头,能够感知用户的环境,并在用户的视野中显示虚拟对象。这使得用户可以与虚拟内容进行互动,将数字信…

实施主品牌进化战略(四):升级顾客认知驱动力

很多企业常常会陷入困境&#xff0c;有足够优秀的产品&#xff0c;但没有有效地提升顾客认知驱动力。产品优秀&#xff0c;但如果顾客对品牌的认知度不高、信任度不足&#xff0c;主品牌定位与目标顾客的认知产生距离&#xff0c;那么增长将无处可寻。所以&#xff0c;提升顾客…

基于通用LLM的一次测试用例自动生成的实验

基于通用LLM的一次测试用例自动生成的实验 选择很多,最后选择了讯飞的星火做本次实验,原因还是因为讯飞的LLM的API是有免费额度的,案例代码相对比较成熟易学易用 1 LLM和基于LLM的应用 最近这段实际LLM已经变成了一个炙手可热的词汇,现在任何技术不了到LLM都感觉好像没有彻…

最快的包管理器--pnpm创建vue项目完整步骤

1.用npm全局安装pnpm npm install -g pnpm 2.在要创建vue项目的包下进入cmd&#xff0c;输入&#xff1a; pnpm create vue 3.输入项目名字&#xff0c;选择Router,Pinia,ESLint,Prettier之后点确定 4.cd到创建好的项目 &#xff0c;安装依赖 cd .\刚创建好的项目名称\ p…

多数据源Pagehelper怎么配置

1.遇到的问题 若依增加多数据源&#xff0c;分页报错&#xff0c;查了下pagehelper也要修改配置。 官方配置&#xff1a; 官方文档&#xff1a;连接多数据源sqlServer使用分页的情况下报错&#xff0c;不使用分页时正常。 Issue #I3NJMR 若依/RuoYi - Gitee.com 我的配置&a…

VirtualBox Win7 虚拟机 共享文件夹设置

系统配置 VirtualBox虚拟机版本&#xff1a;6.1.46 主机Host&#xff1a;Win11 虚拟机&#xff1a;Win7-32位 添加虚拟光驱 为虚拟机添加虚拟光驱&#xff0c;光驱中导入VBoxGuestAdditions.iso文件。 该文件默认路径为&#xff1a; X:\Program Files\Oracle\VirtualBox\V…

轻松构建MEV机器人,维护Sui网络健康并获取收益

DeepBook是Sui的第一个原生流动性层&#xff0c;未完成的过期订单仍然存在链上&#xff0c;这就占用了网络存储空间。这些过期订单还会计入DeepBook的动态字段限制&#xff0c;而保持一个健康的网络和DeepBook的可操作性则需要清理这些旧订单。 幸运的是&#xff0c;Sui的存储…

浏览器控制台中网络选项看不到请求发送出的url信息解决办法

1、按F12打开控制台 2、点击设置按钮 3、选择首选项&#xff0c;点击还原默认值并刷新即可

区块链全能交易所

UNUX发布了新一代的全能型交易平台&#xff0c;基于区块链的去中心化交易所&#xff0c;不需要用户注册信息、不托管用户资产&#xff0c;没有地域和国界的限制&#xff0c;无需银行账户&#xff0c;以区块链为载体USDT为统一基础货币&#xff0c;用户以全球化的视野做资产配置…

培养现货黄金投资的盈利能力

在现货黄金市场中&#xff0c;如何定义投资能否成功&#xff0c;关键的就是看现货黄金投资者的盈利能力&#xff0c;简单来说&#xff0c;就是投资者在市场中能够赚多少钱&#xff0c;这是可以量化的指标。所以每一个现货黄金投资者都渴望提升自己的盈利能力&#xff0c;一方面…

Python_ithheima_第三阶段

01 PySpark实战-前沿介绍 本节主要是广告内容。。。。。 02 基础准备 03 数据输入 04 数据计算-map方法 05 数据计算-flatMap方法 06 数据计算-reduceByKey方法 练习案例 08 数据计算-filter方法 09 数据计算-distinct方法 10 数据计算-sortBy方法 练习案例2 12 数据输出—输…

前端开发环境配置

前端开发环境配置 当我们进入一家新公司,拿到一台新电脑,作为前端开发,我们需要配置以下环境信息,就可以投入到团队开发了.亲测有效. 1.安装git windows安装 https://editor.csdn.net/md/?articleId123677858 mac安装 直接打开terminal终端,输入git,如果没有安装,会提示安装 …

H5新特性 滑动选择器input的属性type新值range

文章目录 H5新特性 滑动选择器 input[type"range"]input的type"range"自定义滑动选择框background属性 H5新特性 滑动选择器 input[type“range”] input的type“range” <input type"range"> <style> // 默认样式 input[type&quo…

四个方面来带大家学习数据分析,数据分析精通不要太简单

下面分别从这四个方面来带大家学习数据分析&#xff1a; 第一&#xff0c;做数据分析要精通Python吗&#xff1f;第二&#xff0c;数据分析流程是什么&#xff1f;学什么&#xff1f;第三&#xff0c;如何培养数据分析思维&#xff1f;第四&#xff0c;数据分析书籍推荐 一、…

大数据产品深度与广度并举,腾讯云为数据价值释放带来最优解

云原生正在重新定义大数据平台&#xff1f; 目前看的确如此。从2021年Apache Spark和Confluent Kafka宣布支持Kubernetes&#xff0c;到腾讯云等云服务商积极推出多款云原生大数据产品&#xff0c;产业界近年来都在积极探索&#xff1a;如何利用高速发展的云原生技术去解决传统…

python编程:使用 Pillow 将照片转换为1寸报名照片

引言&#xff1a; 在现代科技时代&#xff0c;我们经常需要调整和处理照片以适应特定的需求和用途。本文将介绍如何使用 wxPython 和 Pillow 库&#xff0c;通过一个简单的图形界面程序&#xff0c;将选择的照片转换为指定尺寸的 JPG 格式&#xff0c;并保存在桌面上。 C:\pyt…

基于Java+SpringBoot+Vue火车订票管理系统的设计与实现 前后端分离【Java毕业设计·文档报告·代码讲解·安装调试】

&#x1f34a;作者&#xff1a;计算机编程-吉哥 &#x1f34a;简介&#xff1a;专业从事JavaWeb程序开发&#xff0c;微信小程序开发&#xff0c;定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事&#xff0c;生活就是快乐的。 &#x1f34a;心愿&#xff1a;点…

查看docker镜像是由哪些指令创建来的

–no-trunc 是不要省略。 docker history --no-trunc kevinchina/deeplearning:sd_base_cuda116clip7 > history.txtcp -aL ~/.cache/huggingface/hub/models–Salesforce–blip-image-captioning-large/snapshots/e33defe055114d86bec9c0705b71e590cfc0694c/* ~/.cache/hu…

扩散模型:DDPM代码的学习(基于minist数据集)

文章目录 序言一参考资料①代码来源②相关概念理解③公式推导及训练流程讲解④搜索问题的网站⑤模型运行的环境 二代码解读①模型②训练③测试 三主要训练过程的解析 序言 本文主要对一个基于minist数据集搭建的DDPM模型代码中各个模块的含义进行解析&#xff0c;初步记录了自…