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

01 AUTOSAR CP标准文档阅读指南 阅读详情

题目链接:

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

解题思路:

题目大意:

给你n×n的初始图形,和目标图形,还有m个操作,操作和一把一行或一列变成一种颜色,现在问你使初始图形变成目标图形的操作

的顺序。每个操作都要用上,且一定有解。

算法思想:

初始图形是没有用的。直接从目标图形开始进行操作。对于一个操作,判断该操作对应的那一行或一列的颜色,是否除0之外全部都是与该操作变换的颜色相同,是的话,将那一行或一列全部变为0,并且记录该操作,最后逆序输出。注意,把所有操作遍历一遍是不够的,因为有一些操作是要在别的操作已进行过的基础上才能进行,所以在遍历操作的外层要再加一层循环,直到cnt == m为止。。。

AC代码:

#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;

const int maxn = 550;
struct node{
    char op[3];
    int x,y;
}no[maxn];
int color1[110][110];
int color2[110][110];
int vis[maxn];
int sta[maxn];

int main(){
    int T;
    scanf("%d",&T);
    while(T--){
        int n,m;
        scanf("%d%d",&n,&m);
        for(int i = 1; i <= n; i++)
            for(int j = 1; j <= n; j++)
                scanf("%d",&color1[i][j]);
        for(int i = 1; i <= n; i++)
            for(int j = 1; j <= n; j++)
                scanf("%d",&color2[i][j]);
        for(int i = 1; i <= m; i++)
            scanf("%s%d%d",no[i].op,&no[i].x,&no[i].y);
        memset(vis,0,sizeof(vis));
        int i,j,k;
        int cnt = 0;
        while(1){
            for(i = 1; i <= m; i++){
                if(vis[i])
                    continue;
                if(no[i].op[0] == 'L'){
                    j = no[i].x;
                    for(k = 1; k <= n; k++){
                        if(color2[k][j] && color2[k][j] != no[i].y)
                            break;
                    }
                    if(k == n+1){
                        for(k = 1; k <= n; k++)
                            color2[k][j] = 0;
                        sta[++cnt] = i;
                        vis[i] = 1;
                    }
                }
                else{
                    j = no[i].x;
                    for(k = 1; k <= n; k++){
                        if(color2[j][k] && color2[j][k] != no[i].y)
                            break;
                    }
                    if(k == n+1){
                        for(k = 1; k <= n; k++)
                            color2[j][k] = 0;
                        sta[++cnt] = i;
                        vis[i] = 1;
                    }
                }
                if(cnt == m)
                    break;
            }
            if(cnt == m)
                break;
        }
        for(i = cnt; i > 1; i--)
            printf("%d ",sta[i]);
        printf("%d\n",sta[1]);
    }
    return 0;
}


保姆级教程:用CST 2023一步步复现一个1-8GHz Vivaldi天线(含参数优化与结果分析) 本文提供了一份详细的CST 2023教程,指导读者如何从零开始设计并优化1-8GHz Vivaldi天线。内容涵盖工程设置、参数化建模、仿真加速技巧以及性能优化策略,特别适合需要实现宽带天线设计的工程师和研究人员。通过实战案例,帮助用户掌握Vivaldi天线的核心设计要点和CST高级功能应用。 阅读详情

相关推荐

云计算系统等保测评对象和指标选取

参考GBT22239-2019《基本要求》附录D 云计算应用场景说明。简要理解下图,主要是云计算系统安全保护责任分担原则和云服务模式适用性原则,指导后续的测评对象和指标选取。

ryanzzzzz的博客 4678

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 Submissio

林下的码路 774

知识导航神器:Obsidian Breadcrumbs 插件全攻略

Parent: 插件Child: Breadcrumbs 用法这样,它就能识别出你和其他笔记的关系。

m0_73735578的博客 1629

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

10X Visium空间转录组学入门:从芯片结构到数据分析全流程解析(附避坑指南)

本文全面解析10X Visium空间转录组学技术,从芯片物理结构、探针化学原理到湿实验全流程操作与避坑指南,并详细介绍了从FASTQ数据到空间可视化的核心分析流程。文章旨在帮助科研人员跨越从理论到实操的鸿沟,掌握从样本准备、文库构建到使用Space Ranger和Seurat进行数据分析与可视化的完整路径,为组织生物学研究提供清晰的实践指引。

weixin_29306011的博客 163

五种音频器件综合对比——《器件手册--音频器件》

音频器件当在蜂鸣片的两片电极之间接通交流音频信号时,蜂鸣片会根据信号的大小和频率发生振动,从而产生相应的声音。结构简单、造价低廉。广泛应用于玩具、电子表、电子仪器、电子钟表、定时器等电子电器方面。蜂鸣器是一种一体化结构的电子讯响器,采用直流电源供电,广泛应用于各种电子产品中作发声器件有源蜂鸣器:内部带震荡源,通电即发声,程序控制方便。无源蜂鸣器:内部不带震荡源,需用方波驱动,声音频率可控,价格相对便宜。计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品。

XU157303764的博客 1535

hdu 5386 Cover (逆向暴力模拟)

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

Slow_Wakler的专栏 747

ICC2(一)import design —— tluplus

itf转tluplus相关命令 TLUPlus是存储RC系数的二进制表格式。 TLUPlus模型通过包括宽度,空间,密度和温度对电阻系数的影响,可以估算RC计算net delay。 1.2 产生TLUplus的方法 Itf文件转TLUplus的命令: grdgenxo -itf2TLUPlus -i xx.itf-o xx.tlu+ itf: interconnect technology format file 含每层的厚度,面积等参数 itf同样可以转nxtgrd格式文...

m0_61544122的博客 5483

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

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

Skyline 884

YOLO11涨点优化:卷积魔改 | DCNv2升级版本,助力检测

在DCN的基础上,增加了2个创新点,分别是调制模块和使用多个调制后的DCN模块,从形成了DCN的升级版本——DCNv2

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 967

【软考高级架构】论文范文17——论软件系统架构评估及其应用(ATAM)

软件系统架构评估是保障系统质量属性满足业务目标的关键环节,架构权衡分析方法(Architecture Trade-off Analysis Method,ATAM)作为一种主流的架构评估方法,通过场景识别、敏感点与权衡点分析、风险与非风险决策识别等系统化活动,能够在架构设计早期发现潜在问题,降低后期修改成本。本文以笔者主导的某省级智慧医疗平台架构评估项目为案例,围绕ATAM方法的应用展开论述。笔者担任系统架构师,负责组织评估团队、引导场景捕获、分析架构决策、识别风险与权衡点。

qq837993702的博客 490

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

让 Claude Code 接管 SAP 事务流, 用 Python 和 SAP GUI Scripting 做一个真正能干活的 AI Agent

摘要:SAP系统自动化面临的核心瓶颈在于繁琐的GUI操作而非分析能力不足。通过整合Claude AI、Python和SAP GUI Scripting技术,可构建能直接操作SAP界面的智能代理。该方案利用SAP官方提供的脚本接口,实现事务码执行、界面导航、数据提取等自动化操作,特别适用于DMLT过账引擎等复杂错误分析场景。相比传统SQL导出方案,这种GUI级自动化能处理树控件、ALV表格等复杂界面元素,且无需额外API开发,直接在现有SAP GUI会话上工作,在保持原有权限体系的同时显著提升效率。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 321

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

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

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

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

HDU 5386 Cover 覆盖染色

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

Asuna_acmer 417

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

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

[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

hdu 5402 Travelling Salesman Problem(构造+棋盘黑白染色)

题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5402 解题思路: 官方题解: 首先如果nn为奇数或者mm为奇数,那么显然可以遍历整个棋盘。 如果n,mn,m都为偶数,那么讲棋盘黑白染色,假设(1,1)(1,1)和(n,m)(n,m)都为黑色,那么这条路径中黑格个数比白格个数多11,而棋盘中黑白格子个数相同,所以必然有一个

piaocoder 1224

HDU 5705 Clock(模拟)

Clock 题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5705 解题思路: 给你一个时间,让你找出这个时间之后的一个时间使得时针与分针所成角度为题目所给定的。 我们假设一圈度数为360*120,则时针一小时走3600度。分针一分钟走720度。 设当前时间为h,m分 则时针的角度为h*3600+m*60.分针的角度为720*m;

piaocoder 1174

Codeforces 495 B. Modular Equations && Codeforces Round #282 (Div. 2)

题目链接:http://codeforces.com/problemset/problem/495/B 解题思路:Codeforces官方题解: If a b then there is no answer since . If a = b then x can be any integer larger than a. so there are infinite n

piaocoder 1095
上一篇: hdu 5384 Danganronpa(AC自动机模板题)
下一篇: hdu 5389 Zero Escape(dp类似背包)
yphacker
博客等级 码龄12年 199粉丝 540原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值