ATCoder 杂题 1

AT 杂题记录 1

参见:旧 AT 杂题记录 1、旧 AT 杂题记录 2

ABC259Ex - Yet Another Path Counting

fydj 告诉我的题目。

给定 \(N\times N\) 的矩阵,每个格子有一种颜色,每一步只能向下走或向右走。求起点终点为同一种颜色的路径数量。

\(1\le N\le 400\)

解法:

这种分颜色考虑的,经典做法是值域分治。

首先容易想到,枚举两个颜色相同的位置分别作为起点和终点,用组合数计算。假设有 \(B\) 个该颜色的格子,可以做到 \(O(B^2)\)

另外,还可以 DP 计算,设 \(f_{i,j}\) 表示走到位置 \((i,j)\) 的方案数,很容易转移,可以做到 \(O(N^2)\)

平衡一下,当某种颜色出现次数不超过 \(N\) 次时,用第一种做法,否则用第二种做法,时间复杂度是 \(O(N^3)\),可以通过。

Submission

ARC190B - L Partition

有一个 \(N\times N\) 的矩形,定义 \(K\)\(L\) 形为一个 \(K\times K\) 的矩形的最左(或右)侧一行与最上(下)面一列组成的图形。显然使用 \(1\)\(N\)\(L\) 形个恰好一次可以将 \(N\times N\) 的矩形覆盖。

给定 \(a\)\(b\),有 \(q\) 次询问,第 \(i\) 次询问给定 \(k_i\),求 \((a,b)\)\(k_i\)\(L\) 形覆盖的方案数。

\(1\le N\le 10^{7},1\le Q\le \min\{N,2\times 10^{5}\}\)

解法:

考虑 \(1\)\(k\)\(L\) 形必定组成一个 \(k\times k\) 的矩形。

考虑 \((a,b)\) 出现在 \(k\)\(L\) 形上的条件:其必须在这个 \(k\times k\) 的矩形的边上或角上。

考虑矩形内部的贡献:

  • \(k=1\) 时,只有 \(1\) 种方案。
  • 当点在角上的时候,有 \(3\times 4^{k-2}\) 种方案。
  • 当点在边上的时候,有 \(2\times 4^{k-2}\) 种方案。

再考虑矩形外部的方案数:每一个 \(k+1\)\(n\) 阶的 \(L\) 形可以选择在这个矩形的上面覆盖或下面覆盖,在矩形的左侧覆盖或右侧覆盖,且这两种选择独立。假设我们希望 \(k\times k\) 矩形的左上角为 \((x,y)\),那么方案数就是 \(\binom{n-k}{x-1}\binom{n-k}{y-1}\),即在未选择的 \(L\) 形中选择一些放在左侧或上面。

矩形的左上角是什么呢?当 \((a,b)\) 在角上的时候,左上角显然是确定的,且只有 \(O(1)\) 个,可以直接计算。

\((a,b)\) 在边上的时候,假设在 \(k\times k\) 矩形的上边,其它情况同理。则矩形左上角为 \((a,i)\),需要满足 \(b\in [i+1,i+k-2]\),即 \(b+2-k\le i\le b-1\)。列的方案数是 \(\sum_{i=b+2-k}^{b-1}\binom{n-k}{i-1}\),即 \(\sum_{i=b+1-k}^{b-2}\binom{n-k}{i}\)。即 \(f_k\) 等于这个式子,那么总方案数是 \(\binom{n-k}{a-1}f_k\)

考虑如何计算 \(f_k\)\(k\) 从大到小枚举,这是很经典的一行组合数的一个区间移动到下一行,只要乘二之后减去一些即可。

Submission

ABC360F - InterSections

给定 \(n\) 个区间 \([l,r]\),定义区间 \([l_1,r_1]\)\([l_2,r_2]\) 相交当且仅当 \(l_1<l_2<r_1<r_2\)\(l_2<l_1<r_2<r_1\)

\(0\le L<R\le 10^{9}\),使得 \([L,R]\) 与给定区间相交数量尽可能多。如有多解,输出字典序最小的一组。

解法:

将相交的条件进行转化,例如 \(l_i<L<r_i<R\),可以重新表述为 \(l_i+1\le L\le r_i-1\)\(r_i+1\le R\le 10^{9}\)

如果将 \(l\) 看作 \(x\) 轴,将 \(r\) 看作 \(y\) 轴,那么这是一个矩形的形式。

原问题变为矩形覆盖,查询平面单点最大值。扫描线即可。

注意 \(L\not=R\)

Submission #61687780 - AtCoder Beginner Contest 360

ARCE - Mex Mat

有一个 \(n\times n\) 的矩形 \(A\),给定这个矩形的第一行和第一列。\(A_{i,j},i>1,j>1\) 定义为 \(\operatorname{mex}\{A_{i-1,j},A_{i,j-1}\}\)。给定第一行第一列中只有 \(0\)\(1\)\(2\),容易证明整个矩阵中也只有这三种数字。求矩阵中有多少个 \(0\)\(1\)\(2\)

\(1\le n\le 500,000\)

解法:

打表发现,对于 \(i>5\)\(j>5\)\(a_{i,j}=a_{i-1,j-1}\),具体证明需要一些性质,比较繁琐。所以只需要将前五行和前五列求出来简单计算即可。

Submission

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ZW3D二次开发_入门_Action与Ribbon菜单定制--转自 知乎 捣蛋龙

ZW3D二次开发_入门_Action与Ribbon菜单定制捣蛋龙 ​关注他5 人赞同了该文章​ 目录收起ZW3D二开入门目录 - 知乎 (zhihu.com)最新测试环境:2025 SP前言定制Ribbon菜单1.新建工作区2.定义"行为"3.定义自定义Ribbon文件4.编写策略文件5.编写引导程序6.多环境差异化策…

day4

简单图论与构造 A 考虑把权值为 2 的点看作给权值为 1 的点加一, 所以整个问题被拆成了两个部分:构造树和给节点加一 事实上,在第一部分时我们将树构造的尽量平衡是有好处,这个结论在第二个步骤中会得到证明 构造: Process DFS(father,ch,u,size):if size==0 then returnso…

Omnissa Horizon Windows OS Optimization Tool 2412 - Windows 系统映像优化工具

Omnissa Horizon Windows OS Optimization Tool 2412 - Windows 系统映像优化工具Omnissa Horizon Windows OS Optimization Tool 2412 - Windows 系统映像优化工具 Optimizing Images Using Omnissa Horizon Windows OS Optimization Tool 请访问原文链接:https://sysin.org/…

BOM最全基础信息:标准件、通用件、替换件、必选件

在生产制造领域,物料清单(BOM)是产品设计、生产计划和供应链管理的核心基础。本文系统梳理了BOM中各类零部件的分类方法,供大家参考。在生产制造的复杂领域中,我们会与各式各样的产品组成部分打交道。清晰、准确地对它们进行分类,并实施有效的管理,对于提升生产效率、保…

人工智能辅助芯片设计

芯片设计:一个近乎无限的问题空间 设计复杂性呈指数级增长 设计复杂性的含义 一连串棘手的问题 贯穿整个流程优化 HDL生成研究 使用GCN加速设计评估 人工智能辅助验证 参考文献链接https://www.hc2024.hotchips.org/assets/program/tutorials/3-HC24.synopsys.SteliosDiaman…

应用随机过程 | 期末 cheat sheet

出分后发布笔记……这篇博客汇总了「应用随机过程」2018 - 2022 的期末试题,并根据题型分类总结。 本站相关博客:应用随机过程 | 期末知识点总结特别鸣谢:知乎 | 九一居士 |《应用随机过程》课程笔记系列目录1 马尔可夫链计算题2 常返的马尔可夫链3 连续时间参数的马尔可夫链…

推荐《AI芯片开发核心技术详解》、《智能汽车传感器:原理设计应用》、《TVM编译器原理与实践》、《LLVM编译器原理与实践》4本书,非常感谢

4本书推荐《AI芯片开发核心技术详解》、《智能汽车传感器:原理设计应用》、《TVM编译器原理与实践》、《LLVM编译器原理与实践》由清华大学出版社资深编辑赵佳霓老师策划编辑的新书《AI芯片开发核心技术详解》已经出版,京东、淘宝天猫、当当等网上,相应陆陆续续可以购买。该…

OpenVX基本原理与历史

OpenVX基本原理 2.1 引言 2.1.1 摘要 OpenVX 是一个低级编程框架域,用于支持软件开发人员,可高效访问计算机视觉硬件加速功能和性能的可移植性。OpenVX 旨在支持现代硬件架构,例如,移动和嵌入式 SoC 以及桌面系统。其中许多系统是并行和异构的:多个处理器类型包括多核 CPU…

L4D2自制角色Mod - HUI篇

如何以相对简易的思路自制求生之路2求生者头像Mod本文是笔者尝试制作 求生之路2 角色 Mod 的过程中编写的笔记,笔者的背景是有基础的计算机知识和图像处理软件的使用经验,相信大多数读者朋友都有同样的水平。本文面向希望能快速简单地自定义游戏内角色图像/模型,但对更深层次…

使用Netty与前端请求进行交互实现实时通讯

引言因为不满足与一般的SpringBoot CRUD开发(太无聊了)所以去学一下网络编程,第一站就是通过B站老罗的EasyChat项目了解到了Netty这个网络框架,在学习这个项目之前也是去学习了一下Netty框架的使用以及相关的原理知识所以是有一定了解的,但是只是一味的学习不去实践总感觉是空中…

如何使用 Filebeat 8 连接 Easysearch

在日志场景,还是有很多小伙伴在使用 Filebeat 采集日志的。今天我来实战下使用 Filebeat 8 连接 Easysearch 。本次使用 Easysearch-1.9.0 版本和 Filebeat-8.17.0 版本做演示,也适用 Filebeat-oss-8.17.0 版本。 Easysearch 不开启兼容参数的情况 Easysearch 默认情况下未开…