首页 > 其他分享 >[CQOI2012] 局部极小值

[CQOI2012] 局部极小值

时间:2025-01-08 20:11:49浏览次数:1  
标签:mathbb 比临点 局部 times 最小值 极小值 CQOI2012

前言

又是重庆题, 继续害怕
最近打算每天少踢点球, 我效率不高, 还是要多堆点时间的
然后就是倒计时要多关注, 别老无视
听讲很重要啊
冷静一点, 不死磕, 不畏难, 太难太偏的直接不管即可

思路

转化题意,

定义一个位置为局部极小值, 当且仅当其在以自己为中心 \(3 \times 3\) 的方格中为最小值, 给出所有局部极小值的位置, 求有多少种方案数满足局部极小值位置的约束
特别的, \(n \times m\) 的矩阵中, 填数仅能为 \(1 \sim n \times m\) 的排列

\(\rm{how}?\)
首先考虑你发现 \(n, m\) 非常小, 可能可以使用状态压缩的技巧
考虑局部极小值的性质, 如果我们从 \(1 \sim n \times m\) 依次填写, 那么局部极小值一定是自己周围 \(3 \times 3\) 大小的方格中最先填写的, 而非局部最小值一定不是
容易发现局部极小值的控制范围一定不重, 你甚至可以建出依赖关系的 \(\rm{DAG}\) 方便理解

容易有朴素的想法是, 只状压局部最小值的处理
这样子容易想到转移

令 \(f_{i, \mathbb{S}}\) 表示考虑到第 \(i\) 个数, 其中填了的局部最小值的集合为 \(\mathbb{S}\)
容易发现

\[\begin{align*} & f_{i, \mathbb{S}} \to f_{i + 1, \mathbb{S} \cup s} , s \cap \mathbb{S} = \varnothing \\ & f_{i, \mathbb{S}} \cdot (h(\mathbb{S}) - i) \to f_{i + 1, \mathbb{S}} \end{align*} \]

其中 \(h(\mathbb{S})\) 表示局部最小值填到这个情况时, 还可以填的位置个数, 可以 \(\mathcal{O} (2^{x} nm)\) 预处理

这样子计算出来的方案数有重, 具体的, 可能会出现一些非局部最小值比临点先放
考虑容斥, 具体的, 枚举实际上出现的局部极小值

运用超集反演即可

总结

这类约束条件一般分为两种方向

  • 正向约束: 局部极小值比临点先放
  • 反向约束: 非局部最小值比临点后放

约束条件, 可以建图方便思考

一类推出 \(\rm{dp}\) 之后用容斥解决的问题

注意这题最大的性质在于可能的局部最小值个数很少

标签:mathbb,比临点,局部,times,最小值,极小值,CQOI2012
From: https://www.cnblogs.com/YzaCsp/p/18660445

相关文章

  • 基于分块贝叶斯非局部均值优化(OBNLM)的图像去噪算法matlab仿真
    1.程序功能描述基于分块贝叶斯非局部均值优化(OBNLM)的图像去噪算法matlab仿真,对比不同的参数对OBNLM算法的影响。2.测试软件版本以及运行结果展示MATLAB2022A版本运行  3.核心程序Im0=imread('test.png');Blks1=3;Blks2=5;Blks3=7;Win......
  • Stable-Diffusion小知识:图生图-局部重绘功能
    文章使用的AI绘画SD整合包、各种模型插件、提示词、AI人工智能学习资料都已经打包好放在网盘中了,有需要的小伙伴文末扫码自行获取。当我们使用Stable-Diffusion生成图片后,若是想要修改或新增某些细节,如果使用文生图或图生图去抽卡生成图片,那么能生成出满意图片的概率就比较......
  • c语言 - 如何安全返回局部变量的地址
    c语言返回局部变量的地址在C语言中,返回局部变量的地址是不安全的行为,因为一旦函数执行完毕,局部变量的内存将被释放,返回的地址将指向未定义的内存区域,这将导致不可预知的行为。以下是一个返回局部变量引用的例子,这是错误的做法:#include<stdio.h>int*getVarAddr()......
  • 鸿蒙UI开发——使用WidthTheme实现局部深浅色
    1、场景描述在实际的应用开发中,我们可能需要在界面中局部应用深色或者浅色的界面样式,与全局的深色、亮色同时生效。场景例如:深/亮色预览。此时,我们可以使用WithTheme能力来达到我们的效果。2、WithThemeWithTheme组件可以用于设置应用局部页面自定义主题风格,可设置子组件深......
  • StartAI图生图局部重绘,让画面细节焕发新生!!
    在设计的世界里,每一个细节都承载着我们的创意与心血。然而,有时我们总会遇到一些不尽如人意的画面细节,它们如同瑕疵般破坏了整体的和谐与美感。今天,我要向大家推荐一款强大的工具——StartAI的局部重绘功能,它正是我们修图师的得力助手,能够帮助我们轻松解决这一问题!一、 问题初......
  • EasyPlayer.js视频流媒体播放器如何实现电子放大或局部放大播放功能?
    随着数字化时代的到来,流媒体技术已经成为我们生活中不可或缺的一部分。从娱乐到教育,从远程工作到物联网应用,流媒体技术的广泛应用正在深刻改变我们的生活方式。流媒体行业的快速发展不仅体现在市场规模的扩大,还表现在技术创新、内容多样化、用户体验优化等多个方面。在视频监控......
  • Yolov8-pose关键点检测:轻量化注意力 | 单头注意力模块,并行结合全局和局部信息提高准确
      ......
  • Redis篇-13--数据结构篇5--List内存模型(LinkedList,zipList,quicklist,Listpack,内存对齐,
    Redis的List(列表)数据类型是一个双向链表,允许从两端高效地插入和删除元素。为了提高性能和内存利用率,Redis对List进行了多种优化。特别是在Redis3.2版本中引入的quicklist结构,和Redis6.2版本中引入Listpack结构(替代之前的ziplist压缩列表),逐步提升List的性能。简单概括如下......
  • 最新Midjourney/AI绘画系统+分销推介,GPT4.0模型支持,联网提问总结,AI文生图/图生图/垫图
    目录一、人工智能系统介绍文档二、功能模块系统快速体验三、系统功能模块3.1AI全模型支持/插件系统AI大模型多模态模型文档分析多模态识图理解能力联网搜索回复总结3.2AI智能体应用3.2.1AI智能体/GPTs商店3.2.2AI智能体/GPTs工作台3.2.3自定义创建AI智能体......
  • 20241213-局部变量和全局变量的思考
    for循环或while循环、方法或方法参数列表里定义的局部变量,在其内的代码块执行完毕后就被销毁了,不能再用了。1.A方法的局部变量a作为B方法的传入参数,在B方法内对该传入参数的运算不会对A方法的局部变量a产生影响。见下代码:publicclassArrayReference{ publicstaticvoid......