洛谷P9117 [春季测试 2023] 涂色游戏 题解
题目传送门Description给定行列的矩形初始全为白色。存在次操作每次操作可以将一整行或一整列覆盖成任意颜色。求最终矩形上每个点的颜色。Solution容易想到矩形最终的状态是多次操作叠加而成而靠前的操作可能会全被后面的操作给完全覆盖所以这次操作显然对答案没有任何贡献。由此我们可以考虑如何剪掉这次操作让程序只会计算真正有贡献的操作。我们可以选择离线倒序处理所有操作这样就可以避免覆盖的操作。设为当前行或当前列是否已经涂上了最新的颜色用以剪枝来优化复杂度。要注意矩阵的存储必须用因为数据范围实在是过大普通一定会的。时间复杂度但是实际复杂度远远不到 空间复杂度AC Code#include bits/stdc.h using namespace std; constexpr int MAXN1e610; int T,m,n,q; vector int g[MAXN]; int ext[MAXN][2]; struct operation{ int op,x,c; }o[MAXN]; int main() { ios::sync_with_stdio(false),cin.tie(nullptr),cout.tie(nullptr); cinT;while(T--){ cinnmq; for(int i1;imax(m,n);i) ext[i][0]ext[i][1]0; for(int i1;in;i) g[i].clear(),g[i].resize(m1); for(int i1;in;i) for(int j1;jm;j) g[i][j]-1; for(int i1;iq;i) cino[i].opo[i].xo[i].c; for(int iq;i1;i--) { if(ext[o[i].x][o[i].op]0) { ext[o[i].x][o[i].op]1; if(o[i].op0) { for(int j1;jm;j) if(g[o[i].x][j]-1) g[o[i].x][j]o[i].c; } else { for(int j1;jn;j) if(g[j][o[i].x]-1) g[j][o[i].x]o[i].c; } } } for(int i1;in;i){ for(int j1;jm;j) cout(g[i][j]-1?0:g[i][j]) ; cout\n; } } return 0; }

相关新闻

Unity游戏开发配置管理革命:Luban Next自动化部署与集成实战指南

Unity游戏开发配置管理革命:Luban Next自动化部署与集成实战指南

1. 项目概述最近在Unity项目里折腾配置表,从Excel手动解析到ScriptableObject,再到各种第三方工具,踩的坑都能写本书了。直到遇见了Luban,这个由国内开发者开源的高性能配置解决方案,才算真正找到了“归宿”。它最吸引…

2026/10/14 20:09:42 阅读更多 →
3分钟掌握ncmdump:免费解密网易云音乐NCM格式的终极方案

3分钟掌握ncmdump:免费解密网易云音乐NCM格式的终极方案

3分钟掌握ncmdump:免费解密网易云音乐NCM格式的终极方案 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 你是否曾经在网易云音乐下载了喜欢的歌曲,却发现只能在特定应用中播放?那些神秘的.ncm格式…

2026/10/13 18:56:39 阅读更多 →
AI社会工程攻击威胁开源安全:从“汤普森”事件看防御实战

AI社会工程攻击威胁开源安全:从“汤普森”事件看防御实战

最近在开源社区发生了一件值得所有开发者警惕的事件:一位开源项目的维护者遭遇了一次由AI模型驱动的、高度定制化的社会工程攻击。这并非传统的钓鱼邮件或漏洞利用,而是攻击者利用公开的AI模型,分析目标在GitHub、社交媒体上的活动轨迹、技术…

2026/10/13 16:44:41 阅读更多 →

最新新闻

Gemini Agent企业落地六步法:从目标驱动到生产可控

Gemini Agent企业落地六步法:从目标驱动到生产可控

1. 项目概述:当“给个目标就能干活”从宣传语变成真实工作流最近在几个技术社群里,几乎每天都能刷到“Gemini Agent”这个词。不是某篇论文里的概念,也不是实验室Demo的截图,而是某公司内部测试群里发出来的实操录屏——一个刚入职…

2026/10/14 23:52:22 阅读更多 →
工业视觉光源选型与2026年技术趋势解析

工业视觉光源选型与2026年技术趋势解析

1. 工业视觉光源选型的核心价值在自动化检测领域,视觉成像系统的性能瓶颈往往不是相机本身,而是前端的光源配置。我经历过多个项目,同样的2000万像素工业相机,在优化光源方案后,缺陷检出率从85%提升到99.8%。2026年的智…

2026/10/14 23:52:22 阅读更多 →
TCP端口检测与网络时延测试:无视防火墙的实战指南

TCP端口检测与网络时延测试:无视防火墙的实战指南

TCP端口检测及网络时延测试工具(无视防火墙)做运维和网络排查的兄弟应该都遇到过这种糟心事:业务方反馈系统卡顿、连不上服务器,你第一反应先ping一下,结果 ICMP 包直接被防火墙丢掉,显示“请求超时”。于是…

2026/10/14 23:52:22 阅读更多 →
电力设备并网测试标准与流程详解

电力设备并网测试标准与流程详解

1. 电力系统并网测试概述电力设备并网测试是确保新能源发电设备安全接入电网的关键环节。以光伏逆变器为例,在接入电网前必须通过严格的并网性能测试,主要包括电压/频率适应能力、防孤岛保护、谐波含量等关键指标验证。重要提示:不同国家和地…

2026/10/14 23:52:22 阅读更多 →
开源法律合规与社区运营实践指南

开源法律合规与社区运营实践指南

1. 开源法律与政策解读:从理论到实践开源软件已成为现代技术生态的基石,但许多开发者对背后的法律框架和政策环境仍存在认知盲区。《开源法律、政策与实践》这本书系统地梳理了开源领域的合规要点,其中几个关键概念值得重点关注:许…

2026/10/14 23:52:22 阅读更多 →
Sub-Agents、Skills与知识库:大模型应用架构重构实践

Sub-Agents、Skills与知识库:大模型应用架构重构实践

去年做一个复杂业务场景的大模型应用时,我一开始图省事,把所有能力塞进单个 Agent:检索、生成、校验、执行全在一个上下文里跑。结果很快发现这条路走不通——prompt 越来越长,模型在工具调用里频繁迷失,多轮对话后甚至…

2026/10/14 23:51:18 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述:Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师,我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性,实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景,也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间,确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中,这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/14 16:30:29 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 22:01:27 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 22:45:47 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 7:53:34 阅读更多 →