hdu5386 Cover(逆向思维+模拟)

【低空经济】森林火情高精度监测与早期预警无人机巡护方案 在全球范围内,森林火灾已成为一个严重的生态和社会问题。它不仅对自然生态系统造成了毁灭性的影响,还对人类的生命财产安全构成了极大的威胁。根据国际森林发展组织的统计,全球每年因森林火灾造成的经济损失高达数百亿美元,甚至在某些年份,火灾损失占到某些国家国民经济总量的相当一部分。因此,开展高效的森林火情监测与早期预警工作显得尤为重要。随着科技的发展,无人机作为新兴的监测工具,以其高效、灵活和经济的特点在森林火灾监测领域展现出了巨大的潜力。 阅读详情


Link:http://acm.hdu.edu.cn/showproblem.php?pid=5386


Cover

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)
Total Submission(s): 1247    Accepted Submission(s): 430
Special Judge


Problem Description
You have an  n∗n  matrix.Every grid has a color.Now there are two types of operating:
L x y: for(int i=1;i<=n;i++)color[i][x]=y;
H x y:for(int i=1;i<=n;i++)color[x][i]=y;
Now give you the initial matrix and the goal matrix.There are  m  operatings.Put in order to arrange operatings,so that the initial matrix will be the goal matrix after doing these operatings

It's guaranteed that there exists solution.
 

Input
There are multiple test cases,first line has an integer  T
For each case:
First line has two integer  n , m
Then  n  lines,every line has  n  integers,describe the initial matrix
Then  n  lines,every line has  n  integers,describe the goal matrix
Then  m  lines,every line describe an operating

1≤color[i][j]≤n
T=5
1≤n≤100
1≤m≤500
 

Output
For each case,print a line include  m  integers.The i-th integer x show that the rank of x-th operating is  i
 

Sample Input
  
1 3 5 2 2 1 2 3 3 2 1 3 3 3 3 3 3 3 3 3 3 H 2 3 L 2 2 H 3 3 H 1 3 L 2 3
 

Sample Output
  
5 2 4 3 1
 

Author
SXYZ
 

Source
 


官方题解:

1007.Cover

水题,我们只要每次找一行或一列颜色除了00都相同的,然后如果有对应的操作,就把这行这列都赋值成00即可

其实初始矩阵并没有什么卵用

稍微优化下复杂度是O(n^2)O(n​2​​)的,但是为了简易些范围开到了100100


AC code:

#include <algorithm>
#include <iostream>
#include <iomanip>
#include <cstring>
#include <climits>
#include <complex>
#include <fstream>
#include <cassert>
#include <cstdio>
#include <bitset>
#include <vector>
#include <deque>
#include <queue>
#include <stack>
#include <ctime>
#include <set>
#include <map>
#include <cmath>
#define LL long long
#define MAXN 1000010 
using namespace std;
struct node{
	char ch[3];
	int x;
	int y;
}op[MAXN];
int color1[111][111];
int color2[111][111];
bool vis[MAXN];
int ans[MAXN];
int main()
{
	//freopen("D:\in.txt","r",stdin);
	int n,m,t,i,j,k,cnt;
	scanf("%d",&t);
	while(t--)
	{
		scanf("%d%d",&n,&m);
		for(i=1;i<=n;i++)
		{
			for(j=1;j<=n;j++)
			{
				scanf("%d",&color1[i][j]);
			}
		}
		for(i=1;i<=n;i++)
		{
			for(j=1;j<=n;j++)
			{
				scanf("%d",&color2[i][j]);
			}
		}
		for(i=1;i<=m;i++)
		{
			scanf("%s%d%d",op[i].ch,&op[i].x,&op[i].y);
		}
	/*	for(i=1;i<=m;i++)
		{
			printf("%s %d %d\n",op[i].ch,op[i].x,op[i].y);
		}*/
		memset(vis,false,sizeof(vis));
		cnt=0;
		while(1)
		{
			for(i=1;i<=m;i++)
			{
				if(vis[i])
					continue;
				if(op[i].ch[0]=='H')
				{
					j=op[i].x;
					for(k=1;k<=n;k++)
					{
						if(color2[j][k]!=0&&color2[j][k]!=op[i].y)
							break;
					}
					if(k==n+1)
					{
						for(k=1;k<=n;k++)
						{
							color2[j][k]=0;
						}
						ans[++cnt]=i;
						vis[i]=true;
					}
				}
				else if(op[i].ch[0]=='L')
				{
					j=op[i].x;
					for(k=1;k<=n;k++)
					{
						if(color2[k][j]!=0&&color2[k][j]!=op[i].y)
							break;
					}
					if(k==n+1)
					{
						for(k=1;k<=n;k++)
						{
							color2[k][j]=0;
						}
						ans[++cnt]=i;
						vis[i]=true;
					}
				}
				if(cnt==m)
					break;
			}
			if(cnt==m)
				break;
		}
		for(i=cnt;i>=1;i--)//注意:因为顺序是倒着推出来的,所以输出时也要逆着输出 
		{
			if(i==cnt)
				printf("%d",ans[i]);
			else
				printf(" %d",ans[i]);
		}
		puts("");
	}
	return 0;
 } 


手把手教你复现KDD 2024时空预测顶会论文:以UniST和ImputeFormer为例的代码实战与避坑指南 本文详细指导如何复现KDD 2024顶会论文中的UniST和ImputeFormer模型,涵盖环境配置、数据处理、模型训练及评估等关键步骤。通过实战案例和避坑指南,帮助研究者掌握时空预测与插补技术,提升在智慧城市、交通管理等领域的应用能力。 阅读详情

相关推荐

Couldn‘t find device with uuid 恢复LVM元数据 linux

Couldn't find device with uuid 恢复LVM元数据 linux欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 欢迎使用Markdown编辑器 你好! 这是你第一次使

m0_57559579的博客 7166

hdu 5386 Cover(逆向思维+模拟)

题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5386 解题思路: 题目大意: 给你n×n的初始图形,和目标图形,还有m个操作,操作和一把一行或一列变成一种颜色,现在问你使初始图形变成目标图形的操作的顺序。每个操作都要用上,且一定有解。 算法思想: 初始图形没有用。直接从目标图形开始进行操作。对于一个操作,判断该

piaocoder 481

01 ArcGIS空间分析--水文分析--利用水文分析方法提取山谷山脊线

ArcGIS空间分析的一个特别好的分析教程是汤国安老师的空间分析的内容。 实例与练习 练习1. 利用水文分析方法提取山脊、山谷线 1. 背景:山脊线、山谷线是地形特征线,它们对地形、地貌具有一定的控制作用。它们与山顶点、谷底点以及鞍部点等一起构成了地形及其起伏变化的骨架结构。因此在数字地形分析中,山脊线和山谷线以及

Meditation 1万+

2018年8月6日暑假训练日记

上午: HDU 5372 Segment Game(线段树) 覆盖区间数=左端点大于L-右端点大于R 由于区间比较大,所以进行离散化处理 然后树状数组维护一下就可以了 The shortest problem(hdu5373+11的倍数) 结论题:能被11整除的数字,奇数和偶数位之和的差可以被11整除。 HDU 5381 The sum of gcd(莫队+rmq+二分): 由于n...

m0_37772713的博客 239

滤波算法-呼吸心跳信号检测方法(四)

呼吸心跳信号检测系列文章:信号滤波处理

yjh_2019的博客 6269

硬件电路设计采集电路

摘要:采集电路是硬件设计中连接物理世界与数字系统的关键环节,主要用于将温度、压力等物理量转换为电信号。常见的采集电路包括模拟量采集(如温度、电压)、数字量采集(如开关状态)和特殊信号采集(如光、声音)。设计时需重点关注传感器选型、信号调理、电源接地、抗干扰和ADC配置等核心要素,确保信号链路的完整性和稳定性。合理的电路设计需结合具体应用场景,通过仿真和测试验证性能,最终实现精确可靠的数据采集。

qq_37999850的博客 1797

hdu 5386 Cover (逆向暴力模拟)

解题思路:逆向思维  枚举每个操作,然后判断该操作是不是最后一个操作。(就像撕胶布一样,一条一条的剥离)  判断是否是最后一个操作的方法是:  除去已经用过的点(即标记成0的点,可以充当任何颜色),如果操作的那一排都等于当前操作的颜色,那就是最后一个操作。然后再把操作过的点给标记,重复m次。  最后逆向输出记录下的操作的编号即可。 #pragma comment(linker, "/

Slow_Wakler的专栏 747

在YOLO中扩充新类别并且不影响旧类的识别精度

让我们先从简单的部分开始:用我们的新类训练自定义 YOLOv8 模型。在本教程中,我们将向模型添加车牌类。我们将使用Roboflow 中的一个数据集。这个数据集有两个车牌类。在开始训练之前,我们还必须对库进行一些更改。为了节省时间,我还将本教程中我们将进行的更改转换为补丁该补丁包含多项更改,但大多数更改都用于指南的下一部分。if RANK!= -1:是的,我们将编写一个回调。我们希望将此自定义训练模型的头部与 COCO 预训练模型中的旧头部一起使用。

如果想成为中心,那么就到中心去吧。 1225

HDU 5386 Cover (2015年多校比赛第8场)

1.题目描述:点击打开链接 2.解题思路:本题利用逆向思维+贪心法解决。因为题目中已经告诉我们一定存在解,因此可以考虑贪心法的使用。这道题的妙处在于答案和初始矩阵是无关的,只和目标矩阵有关。因为不管初始矩阵长什么样,只要操作一样,加上解的存在性,得到的目标矩阵一定是相同的。接下来就是如何寻找操作序列。 假设最后一步操作执行后,我们得到了目标矩阵,由于所有操作都是对一整行或者一整列进行的

Skyline 884

解决开着代理情况下pip或魔搭下载失败

最近由于经常配环境导致,老是要来回切clash关掉代理,非常的不方便如下面的,魔搭模型下载失败如下面的,pip换源后下载失败。

风吹落叶的博客 2949

农作物生长模型:数学建模与实战案例

在本篇博客中,我们介绍了农作物生长模型的基本原理,并结合Matlab代码和实战案例,演示了如何应用数学建模技术进行农作物生长模型的研究与应用。农作物生长模型在农业领域具有重要意义,希望本篇博客能帮助读者更好地理解农作物生长模型的原理和应用,并在实际农业生产中取得更好的效果。

YOLO 2734

hdu5386 Cover

Problem Description You have an n∗n matrix.Every grid has a color.Now there are two types of operating: L x y: for(int i=1;i H x y:for(int i=1;i Now give you the initial matrix and the goal ma

新月 1097

YOLO11涨点优化:损失函数优化 | 引入MPDIoU,利用边界框左上角和右下角距离,彻底解决重叠框匹配失效问题

【摘要】针对目标检测中重叠框匹配失效问题,本文提出基于MPDIoU损失函数的解决方案。MPDIoU通过同时约束边界框的左上角和右下角两点距离,有效解决了传统IoU损失在重叠场景下的优化歧义问题。文章首先分析YOLO系列在密集目标检测中的性能瓶颈,指出GIoU/CIoU等现有方法无法区分相同IoU值但偏移方向不同的预测框。随后详细解析MPDIoU的数学原理及其相对于主流损失函数的优势,证明两点距离约束能提供唯一优化方向。最后给出在YOLO11中实现MPDIoU的具体方案,包括核心代码修改点和架构适配建议。实验

2601_95807009的博客 172

hdu 5386 Cover(暴力求解+想法题)

题意: 有两种操作: 操作L x y,把当前x,这一列全部置为y 操作H x y,把当前,这一行全部置为y。 现在给你n∗n n*n的初始矩阵,以及n∗n n*n的目标矩阵 现在给你m种操作(由以上两种操作构成),问怎么排序这m种操作,才能使得,初始矩阵,经由排序后的操作,构成目标矩阵。 输出排序方案。 解析: 逆向思维, 枚举每个操作,然后判断该操作是不

小G的ACM之路 1075

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

HDU 5386 Cover(模拟)

Cover Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 966    Accepted Submission(s): 320 Special Judge Problem Description Y...

weixin_33709609的博客 96

IMSL CNL 7.0.0 (x86-64)Crack

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

HDU 5386 Cover

Cover Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Special Judge Problem Description You have an n∗n matrix.Every grid has a color.Now there are two

JYZ's Blog 338

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

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

HDU 5386 Cover 覆盖染色

给出棋盘前后的颜色以及一系列操作,求解一个操作系列,使操作按这个序列进行能使棋盘从初状态到末状态,保证有解。

Asuna_acmer 417

[HDOJ5427]Cover

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5386 逆向思维,(初始状态没什么用。。) 1 #include <cstdio> 2 #include <cstdlib> 3 #include <cstring> 4 #include <algorithm> ...

weixin_30251587的博客 93

Hdu 5386 Cover 拓扑排序

Cover Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 346    Accepted Submission(s): 112 Special Judge Problem Description You hav

每一次AC都是一种感动 700

HDU 5386 Cover(暴力+逆推)——多校练习8

HDU 5386 Cover(暴力+逆推)——多校练习8 逆推

queuelovestack的专栏 1143

HDU 5386 Cover(求一个初始状态数图到另一个终止状态数图所需的步骤)

题目地址:点击打开链接 思路:暴力模拟每种步骤到最后判断,其实没有必要,因为从初始到终止肯定有一种步骤,从终止到初始回溯就行,给图赋值的时候要从1开始循环,因为步骤里面图的行数和列数都是从1开始搞的 AC代码: #include #include #include using namespace std; int map1[110][110],map2[110][110]; cha

Java识堂,一个有干货的微信公众号 484

hdu5386(2015多校8)--Cover

题目链接:点击打开链接 题目大意:给出一个n*n的矩阵的初始值,和最终的值,现在有m个操作 L i j ,将第i列的值重置为j,H i j,将第i行的值重置为j。问m个操作应该怎么执行,可以完成矩阵的变化。 从最终的值向前找寻方案,每次找行和列中剩余的颜色全部相同的,看是否存在没被使用的操作可以完成它,如果有就记录下来,那么最终按照记录的逆序输出,就是可以完成变化的序列啦 #include

随风的专栏 599

hdu 5386 Cover 脑洞 +有点贪心 2015 Multi-University Training Contest 8

Cover Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 1184    Accepted Submission(s): 411 Special Judge Problem Description You have

便纵有千种风情 532

视频隐私脱敏工程化:CSRT/KCF追踪算法在本地推理中的实现与边界

在短视频内容合规审查中,动态遮挡(Dynamic Masking)是高频且高耗时的环节。传统手动关键帧打码不仅效率低下,且在目标快速移动或遮挡时极易出现遮罩漂移。本文从计算机视觉工程角度,解析基于CSRT与KCF算法的目标追踪方案在视频隐私处理中的技术路径、性能权衡及落地实践。

Mysssone的博客 187

【算法拾光】链表 哈希表|K个一组翻转链表 + 两数之和

K个一组翻转链表需分段反转,借助哑节点与前驱指针维护连接,避免断链;两数之和利用哈希表实现O(1)查找,空间换时间,高效定位目标组合。前者考察链表指针操作,后者聚焦映射关系构建,均为面试高频题。

wuqingyigexiaoba的博客 274

排序算法深度笔记(下):非比较类排序的线性突破与工程边界

排序算法时间复杂度额外空间复杂度稳定性是否基于比较选择排序O(N^2)(O(1))不稳定是冒泡排序O(N^2)(O(1))稳定是插入排序O(N^2)(O(1))稳定是归并排序O(N\log N)(O(N))稳定是快速排序O(N\log N)O(log N)不稳定是堆排序O(N\log N)O(1)不稳定是计数排序(O(N + M))O(M))稳定否基数排序O(N)稳定否桶排序平均O(N) / 最坏O(N^2)

2401_87069538的博客 559
上一篇: hdu5384 Danganronpa(ac自动机+处理源字符串总容量超过二维数组容量的技巧(连接+分割))
下一篇: TOYS(计算几何--点与线的关系(叉积+二分(二分之前必须排序!!!)))
林下的码路
博客等级 码龄12年 295粉丝 506原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

林下的码路

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值