[BZOJ1054]HAOI2008移动玩具|bfs

Android存储空间不足下,APP出现奔溃等情况 版权声明:本文为博主原创文章,未经博主允许不得转载。 1. 问题起因     实时录制视频,使用getExternalCacheDir()函数返回的路径作为文件缓存区 2. 问题产生     系统在空间不足的情况下第一清除getExternalCacheDir和getCache文件下的缓存,导致正在录制的视频出现Error。 3. 解决方案     第一 阅读详情

暴力bfs+hash判重咯,只有2^16个状态,直接压成二进制数。。

#include<cstdio>
#include<iostream>
#include<memory.h>
#define N 1000000
using namespace std;
struct node{
	bool a[4][4];
	int d;
}que[N+5],get,st,end;
char s[10];
int i,j,head,tail,hh,tt,to,u[70000];
int hash(node a)
{
	int i,j,ans=0;
	for (i=0;i<4;i++)
		for (j=0;j<4;j++)
			ans=(ans<<1)+a.a[i][j];
	return ans;
}
int bfs()
{
	memset(u,0,sizeof(u));
	que[1]=st;st.d=0;
	hh=head=tt=tail=1;
	u[hash(st)]=1;
	if (hash(st)==to) return 0;
	node zt;int h;
	while (hh<=tt)
	{
		get=que[head++];hh++;
		if (head>N) head=1;
		for (int i=0;i<4;i++)
			for (int j=0;j<4;j++)
				if (get.a[i][j])
				{
					if (i&&!get.a[i-1][j])
					{
						zt=get;zt.d++;
						swap(zt.a[i][j],zt.a[i-1][j]);
						h=hash(zt);
						if (h==to) return zt.d;
						if (!u[h])
						{
							u[h]=1;
							tail++;tt++;if (tail>N) tail=1;
							que[tail]=zt;
						}
					}
					if (i<3&&!get.a[i+1][j])
					{
						zt=get;zt.d++;
						swap(zt.a[i][j],zt.a[i+1][j]);
						h=hash(zt);
						if (h==to) return zt.d;
						if (!u[h])
						{
							u[h]=1;
							tail++;tt++;if (tail>N) tail=1;
							que[tail]=zt;
						}
					}
					if (j&&!get.a[i][j-1])
					{
						zt=get;zt.d++;
						swap(zt.a[i][j],zt.a[i][j-1]);
						h=hash(zt);
						if (h==to) return zt.d;
						if (!u[h])
						{
							u[h]=1;
							tail++;tt++;if (tail>N) tail=1;
							que[tail]=zt;
						}
					}
					if (j<3&&!get.a[i][j+1])
					{
						zt=get;zt.d++;
						swap(zt.a[i][j],zt.a[i][j+1]);
						h=hash(zt);
						if (h==to) return zt.d;
						if (!u[h])
						{
							u[h]=1;
							tail++;tt++;if (tail>N) tail=1;
							que[tail]=zt;
						}
					}
				}
	}
}
int main()
{
	freopen("1054.in","r",stdin);
	for (i=0;i<4;i++)
	{
		scanf("%s",s);
		for (j=0;j<4;j++) st.a[i][j]=s[j]-'0';
	}
	for (i=0;i<4;i++)
	{
		scanf("%s",s);
		for (j=0;j<4;j++) end.a[i][j]=s[j]-'0';
	}
	to=hash(end);
	printf("%d\n",bfs());
}


在 SAP 中,应收票据的收取、到期承兑、贴现均有标准操作路径与事务码,以下按业务场景给出操作步骤、T-code、会计分录(含附 / 不附追索权) 摘要:本文详细介绍了SAP系统中应收票据的全流程处理,包括收款(F-36)、到期承兑(F-34/F-20)和贴现(F-33)的标准操作。重点说明了不同业务场景下的事务码使用、操作步骤及对应的会计分录,特别区分了附追索权与不附追索权贴现的处理差异。同时提供了票据查询(FBL5N)和清账(F-32)的辅助功能指引,并汇总了各业务场景的核心会计分录,为财务人员提供了一套完整的SAP应收票据操作指南。(149字) 阅读详情

相关推荐

【深度学习3】ubuntu22.04从零开始搭建深度学习环境

ubuntu22.04从零开始搭建深度学习开发环境

weixin_43387635的博客 1万+

1054: [HAOI2008]移动玩具

Description   在一个4*4的方框内摆放了若干个相同的玩具,某人想将这些玩具重新摆放成为他心中理想的状态,规定移动 时只能将玩具向上下左右四个方向移动,并且移动的位置不能有玩具,请你用最少的移动次数将初始的玩具状态移 动到某人心中的目标状态。 Input   前4行表示玩具的初始状态,每行4个数字1或0,1表示方格中放置了玩具,0表示没有放置玩具。接着是...

ailiao2015的博客 377

Java后端开发实战:手把手教你用e签宝API搞定电子合同签署(附完整代码)

本文详细解析了Java后端开发中如何通过e签宝API实现电子合同签署的全流程,包括环境配置、核心架构设计、Token管理、签署流程实现及回调处理等关键环节。通过完整的代码示例和最佳实践,帮助开发者高效集成电子签名服务,提升企业数字化转型效率。

weixin_42662293的博客 532

bzoj 1054 题解

bfs Code: /************************************************************** Problem: 1054 User: wohenshuai Language: C++ Result: Accepted Time:40 ms Memory:1356 kb ************

haha_2678的专栏 425

Mixer-First Receiver适用于宽带阵列应用的接收机技术1

Mixer-First Receiver适用于宽带阵列应用的接收机技术1技术的背景单元级数字化阵列传统链路到Mixer-First链路的逻辑考虑三种场景小结 技术的背景 在文章《吊打全球的顶级毫米波数字阵列项目-MIDAS》中提到了DARPA在MIDAS项目中在毫米波实现宽带单元级数字化阵列用到了一个关键的叫做N-Path filter的技术,而这个技术同样出现在了《让微波射频工程师颤抖的芯片-MATRICs》的MATRICs芯片中。 为什么DARPA的各个合作研究机构选择这种技术?这篇来自Universi

ICONO的博客 2167

毫米波雷达之CFAR 目标检测

恒虚警率(CFAR)算法是一种广泛应用于雷达目标检测的算法,其主要目 标是减少由于杂波与回波之间强度不对称而引起的误报,以确保相对恒定的虚警 率。如图 3.4(a)所示,表示由距离单元组成的一维数据。在待测单元 D 周围选 择若干个背景杂波功率的蓝色单元构成参考滑窗,称为参考单元;而待测单元 D 相邻的若干个不用于背景估计的单元则称为保护单元。当参考单元和保护单元的 维度从一维扩展到二维时,相应的 CFAR 检测由一维 CFAR 演变为二维 CFAR 以处理参考窗口,如图 3.4 (b)所示。

m0_56120826的博客 4922

洛谷P4289 [HAOI2008]移动玩具——题解

题目传送门 题目大意: 有一个4*4的方格,有些格子放有玩具,每次可以将任意两个格子互换,问从起始状态到目标状态最少需要多少步。 思考过程&amp;具体做法: 直接跑bfs,对每个图状压记录状态判重就行了。 代码: #include &lt;bits/stdc++.h&gt; using namespace std; struct stu { int step; ...

CleverLarry的博客 631

搞定ESD(五):静电放电问题分析与调试

前面深入分析了静电放电的干扰机理、耦合路径,从现在开始将进入下一个大家非常关注的环节:静电放电问题分析与调试,掌握静电放电问题的分析方法,快速锁定敏感设备或者耦合路径,可以达到事半功倍的效果。

记得诚 2795

1054: [HAOI2008]移动玩具 - BZOJ

Description在一个4*4的方框内摆放了若干个相同的玩具,某人想将这些玩具重新摆放成为他心中理想的状态,规定移动时只能将玩具向上下左右四个方向移动,并且移动的位置不能有玩具,请你用最少的移动次数将初始的玩具状态移动到某人心中的目标状态。Input前4行表示玩具的初始状态,每行4个数字1或0,1表示方格中放置了玩具,0表示没有放置玩具。接着是一个空行。接下来4行表示玩具的目标状态,每行4个数...

weixin_30721077的博客 197

执行任务赚积分

接下来N行,每行两个空格分隔的整数(SLA和V),SLA表示任务的最晚处理时间,V表 示任务对应的积分。每个任务都有最晚处理时间限制和积分值,在最晚处理时间点之前处理完成任务才可获得对应的积分奖励。现有N个任务需要处理,同一时间只能处理一个任务,处理每个任务所需要的时间固定为1。可用于处理任务的时间有限,请问在有限的时间内,可获得的最多积分。第2个时间单位内,处理任务4,获得5个积分。输入描述:第一行为一个数N,表示有N个任务,1

面试高手的博客 4695

PCIe协议之 Equalization篇 之 理论篇 之 FFE

作为最后一道“精加工”工序,DFE利用其不放大噪声的优势,精准地消除残余的、强烈的后光标ISI,最终得到一个非常干净、张得很开的眼图,供判决器使用。信号经过信道衰减后变得模糊,首先由CTLE进行“粗调”,提供一个宽频带的增益,将眼图初步打开,为后面的DFE创造一个可以正常工作的信号环境。,它通过将输入信号在不同时间点上的多个副本(称为“抽头”)进行加权求和,来直接塑造或“整形”输出信号的波形。:这是最主要的信号路径,通常系数为正值,决定了信号的幅度。:将所有加权后的信号相加,产生最终的均衡输出。

那么菜的博客 756

bzoj1054 [HAOI2008]移动玩具(状压+bfs)

一共就16个位置,不是1就是0,显然想到状压。 一共2162^{16}种状态,bfs即可。复杂度大概O(216∗16∗4)O(2^{16}*16*4)

Icefox的博客 424

禁止使用服务器 IP 访问 Apache 环境下的 Web 站点

通过在 Apache 的配置文件中添加适当的指令,我们可以轻松地禁止使用服务器 IP 地址访问我们的 Web 站点。在 Apache 环境下,有时我们希望禁止用户使用服务器的 IP 地址直接访问我们的 Web 站点,而只允许使用域名进行访问。现在,当用户尝试使用服务器的 IP 地址来访问你的网站时,他们将会被拒绝访问,只有通过域名才能正常访问。为了实现这个目标,我们可以通过 Apache 的配置文件进行相应的设置。表示禁止对根目录的访问权限,即禁止使用服务器的 IP 地址进行访问。

TpCode的博客 945

【BZOJ1054】[HAOI2008]移动玩具 BFS

【BZOJ1054】[HAOI2008]移动玩具 Description   在一个4*4的方框内摆放了若干个相同的玩具,某人想将这些玩具重新摆放成为他心中理想的状态,规定移动 时只能将玩具向上下左右四个方向移动,并且移动的位置不能有玩具,请你用最少的移动次数将初始的玩具状态移 动到某人心中的目标状态。 Input   前4行表示玩具的初始状态,每行4个数字1或0...

aodanchui1057的博客 118

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

BZOJ 1054: [HAOI2008]移动玩具【BFS】

1054: [HAOI2008]移动玩具 Time Limit: 10 Sec Memory Limit: 162 MB Description   在一个4*4的方框内摆放了若干个相同的玩具,某人想将这些玩具重新摆放成为他心中理想的状态,规定移动 时只能将玩具向上下左右四个方向移动,并且移动的位置不能有玩具,请你用最少的移动次数将初...

aiweiluan5095的博客 73

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

【BZOJ1054】[HAOI2008]移动玩具【BFS】【Hash】

【题目链接】 大暴搜...hash去重一下就行。 搜到答案时候直接输出是因为BFS时队列前的状态步数是最小的。 /* Footprints In The Blood Soaked Snow */ #include #include using namespace std; const int maxn = 7, maxq = 1 << 17, inf = 0x3f3f3f3f; c

BraketBN 581

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

BZOJ 1054: [HAOI2008]移动玩具(状压,BFS)

Description 在一个4*4的方框内摆放了若干个相同的玩具,某人想将这些玩具重新摆放成为他心中理想的状态,规定移动 时只能将玩具向上下左右四个方向移动,并且移动的位置不能有玩具,请你用最少的移动次数将初始的玩具状态移 动到某人心中的目标状态。 Input 前4行表示玩具的初始状态,每行4个数字1或0,1表示方格中放置了玩具,0表示没有放置玩具。接着是一个空 行。接下来4行表示玩具的目标状态...

qq_43544481的博客 272

【BZOJ】1054: [HAOI2008]移动玩具(bfs+hash)

http://www.lydsy.com/JudgeOnline/problem.php?id=1054 一开始我还以为要双向广搜。。。。但是很水的数据,不需要了。 直接bfs+hash判重即可。 #include <cstdio> #include <cstring> #include <cmath> #include <str...

124

bzoj 1054: [HAOI2008]移动玩具 bfs

1054: [HAOI2008]移动玩具 Time Limit:10 SecMemory Limit:162 MB[Submit][Status][Discuss] Description   在一个4*4的方框内摆放了若干个相同的玩具,某人想将这些玩具重新摆放成为他心中理想的状态,规定移动 时只能将玩具向上下左右四个方向移动,并且移动的位置不能有玩具,请你用最少的移动次数...

weixin_30703911的博客 94

[BZOJ]1054: [HAOI2008]移动玩具BFS

Description   在一个4*4的方框内摆放了若干个相同的玩具,某人想将这些玩具重新摆放成为他心中理想的状态,规定移动 时只能将玩具向上下左右四个方向移动,并且移动的位置不能有玩具,请你用最少的移动次数将初始的玩具状态移 动到某人心中的目标状态。 Input   前4行表示玩具的初始状态,每行4个数字1或0,1表示方格中放置了玩具,0表示没有放置玩具。接着是一个空

TYB的博客 523

BZOJ 1054: [HAOI2008]移动玩具 BFS, Hash

Description   在一个4*4的方框内摆放了若干个相同的玩具,某人想将这些玩具重新摆放成为他心中理想的状态,规定移动 时只能将玩具向上下左右四个方向移动,并且移动的位置不能有玩具,请你用最少的移动次数将初始的玩具状态移 动到某人心中的目标状态。 Input   前4行表示玩具的初始状态,每行4个数字1或0,1表示方格中放置了玩具,0表示没有放置玩具。接着是一个空 行。接下来4行

I good vegetable a! 695

【bzoj1054】[HAOI2008]移动玩具 Bfs

题目描述 在一个4*4的方框内摆放了若干个相同的玩具,某人想将这些玩具重新摆放成为他心中理想的状态,规定移动时只能将玩具向上下左右四个方向移动,并且移动的位置不能有玩具,请你用最少的移动次数将初始的玩具状态移动到某人心中的目标状态。 输入 前4行表示玩具的初始状态,每行4个数字1或0,1表示方格中放置了玩具,0表示没有放置玩具。接着是一个空行。接下来4行表示玩具的目标状态,每行4个...

weixin_30672295的博客 83
上一篇: [BZOJ2326]HNOI2011数学作业|矩阵乘法
下一篇: [BZOJ2463]中山市选2009 谁能赢呢
Tag_king
博客等级 码龄12年 15粉丝 164原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值