11-08 题

news/2025/11/9 19:48:14/文章来源:https://www.cnblogs.com/dccy/p/19204754

11-08 题

目录
  • 11-08 题
    • P5405 [CTS2019] 氪金手游 - 洛谷
    • AT_agc036_f [AGC036F] Square Constraints - 洛谷
    • F - Almost Sorted 2
    • G - One Time Swap 2
    • P13004 [GCJ 2022 Finals] Schrödinger and Pavlov - 洛谷
    • Problem - 1784F - Codeforces
    • P13559 【MX-X15-T6】翻树树 - 洛谷
    • P8179 「EZEC-11」Tyres - 洛谷
    • Problem - 811E - Codeforces
    • Clique - 题目 - QOJ.ac

  • P9419 [POI 2021/2022 R1] Układanie kart - 洛谷
  • P8326 [COCI 2021/2022 #5] Fliper - 洛谷
  • CF1750G Doping - 洛谷
  • CF1693F I Might Be Wrong - 洛谷
  • CF1477D Nezzar and Hidden Permutations - 洛谷
  • P10574 [JRKSJ R8] 暴风雪 - 洛谷
  • P12264 『STA - R9』咏叹调调律 - 洛谷
  • P13004 [GCJ 2022 Finals] Schrödinger and Pavlov - 洛谷
  • Problem - 1784F - Codeforces
  • P13559 【MX-X15-T6】翻树树 - 洛谷
  • P8179 「EZEC-11」Tyres - 洛谷
  • Problem - 811E - Codeforces
  • Clique - 题目 - QOJ.ac

P5405 [CTS2019] 氪金手游 - 洛谷

考虑固定 \(W\) 怎么做。

考虑树为外向树怎么做,那么要求每个点都是它子树内最早被选的点,记 \(sum\) 表示所有 \(W\) 的和,\(s_x\) 表示子树内 \(W\) 的和,容易算出对于点 \(x\) 这种情况的概率为:

\[\dfrac {W_x}{sum} \sum _{i=0}^{\infty} (\dfrac {sum-s_x}{sum})^i \]

后面的和式是收敛的,因此利用等比数列求和展开得到

\[\dfrac {W_x}{s_x} \]

把所有点的概率乘起来就得到了外向树的概率。

现在可能有向上的边,考虑容斥成「任意 \(-\) 向下」。任意时就不乘这个点的概率,减去向下时就以负一的系数乘概率。

现在 \(W\) 不确定,考虑 DP 把子树 \(W\) 的和记进状态里,此时 \(s_x\) 就是向下的边组成的连通块内的 \(W\) 的和 。复杂度为树上背包的复杂度 \(O(n^2)\)

AT_agc036_f [AGC036F] Square Constraints - 洛谷

题目相当于限制 \((i,p_i)\) 在半径为 \(n\) 和半径为 \(2n\) 的两个圆之间。

若只限制在一个圆内,那么每个点有一个上界 \(R_i\),按上界从小到大排序,答案就是 \(\prod R_i-i+1\)

现在对于 \(i<n\) 的点多了一个下界 \(L_i\)。考虑容斥,我们指定有 \(k\) 个点取到了下界之下,容斥系数为 \((-1)^k\),如果知道了哪些点取到下界之下,那么每个点都取一个上界,按上界排序后用上式算方案数。

如果按照原顺序直接带容斥系数 DP,上界是无序的,不可做。

考虑先枚举 \(k\),那么发现这三部分是有序的:\(<n\) 的选 \(L_i\)\(\ge n\) 的,\(<n\) 的选 \(R_i\)

可以对于 \(<n\) 的按 \(L_i\)\(\ge n\) 的按 \(R_i\),把这 \(2n\) 个点排序。由于我们知道 \(k\) 所以对于第三部分的贡献可以立刻知道,那么设 DP \(f_{i,j}\) 表示前 \(i\) 个点中第一部分选了 \(j\) 个点,容易转移。注意我们这里的 DP 是不带容斥系数的,我们要在最后将 \(f_{2n,k}\)\((-1)^k\) 的系数计入答案。复杂度 \(O(n^3)\)

F - Almost Sorted 2

每个数限制都是关于前面一个数范围,考虑从大到小插入每个数。

插入一个数 \(i\) 要求前面的数要 \(\le i+D\),容易发现插入完后一定合法。

依次插入 \(cnt\)\(i\),统计多少个数满足 \(\le i+D\) 然后乘上组合数即可,复杂度 \(O(n)\)

G - One Time Swap 2

有三种序列,它们的字典序依次变大:

  • 选一个位置与后面一个更小的数交换。
  • 选两个相等的数交换。
  • 选一个位置与后面一个更大的数交换。

其中第一种序列选的位置越前,字典序越小;第三种序列选的位置越后字典序越小。

可以预处理每个数后面比它小或比它大的数的个数,在前缀和或后缀和上二分即可。二分到一个位置后要求后缀第 \(k\) 小,可以用可持久化线段树。

注意第一种和第三种的线段树有区别:第一种当两数相同时,位置越靠后越小;第三种相反。

P13004 [GCJ 2022 Finals] Schrödinger and Pavlov - 洛谷

只需取出 \(n\) 所在的基环树。考虑方案数转概率,记 \(p_i\) 表示点 \(i\)\(1\) 的概率,转移是容易的。

但是对环上的转移会有问题,因为一个点会有概率「既是 0 又是 1」,所以考虑找到环上编号最小点,在第一次转移这个点的时候讨论其确定为 \(0\) 还是 \(1\),然后继续转移。复杂度 \(O(n)\)

Problem - 1784F - Codeforces

除了前缀删的一段,和中间被删掉的一段,后面的段都可以看做每次删原序列上的相邻两个。

发现如果第 \(i\) 次操作删的不是前缀或中间的段,那么删的数字就是 \(n+i-1,n+i\)。所以可删的最大数字是 \(n+k\)

充要就是:

  • 每个段的长度为偶数,总长为 \(2k\)
  • 小于等于 \(n\) 的被删数中,删的是 \([1,n]\) 的「一段前缀与一段后缀」或「全部删掉」。
  • \([1,n]\) 被删的后缀为 \([p,n]\),则 \([n+1,2n-p]\) 也要被删。
  • 最大的被删数小于等于 \(n+k\)

枚举前缀删了 \(2p\) 个数,分前缀是否全被删完讨论:

  • \(2p<n\) 时,再枚举中间段删了 \(2c\) 个,此时后面的段可以在 \(\le n+k\) 里随便删。相当于是问 \(n\) 个数选出 \(m\) 组无交相邻数的方案数,相当于在 \(n-m\) 个数里选 \(m\) 个数,再把每一组的另一个数插进去,因此方案数为 \(\binom{n-m}{m}\),因此贡献为:

    \[\sum _{p=0}^k [2p<n] \sum _{c=0}^{\min(n-2p-1,k-p)} \binom {p}{k-p-c} \]

    考虑 \(p\) 增加时,组合数第 \(p\) 行贡献的区间 \([l,r]\) 的变化量是 \(O(1)\) 的,维护 \(l,r\) 即可。而 \(p\gets p+1\) 时,贡献的变化为 \(s\gets 2s-\binom {p}{r}+\binom {p}{l-1}\)

  • \(2p\ge n\) 时贡献是容易算的,注意要求第二段不能与前缀段相邻:

    \[\sum _{p=0}^k [2p\ge n] \binom{n-p-1}{k-p} \]

复杂度 \(O(n)\)

P13559 【MX-X15-T6】翻树树 - 洛谷

一种思路是对于每种度数的点都连续翻两次。还有一种思路是依次取叶子,注意到叶子个数 \(\ge\) 最大度数。

可以把上述两种暴力结合起来,先翻一堆度数较大(度数大于一个分界线 \(B\))的点,剩下的可以依次翻叶子。

可以枚举度数分界线 \(B\),找到一个合法的分界线即可。

可以证明一定存在这样合法的分界线。

P8179 「EZEC-11」Tyres - 洛谷

\(t=0\) 可以用堆贪心。可以将朴素 DP 与贪心结合。考虑把每个 \(t\) 挂在每个轮胎的第一圈,然后找到一个最小的 \(k\) 使得第 \(k\) 圈的代价大于第一圈的代价,对于小于 \(k\) 的圈我们 DP,算出 \(f_i\) 表示只用小于 \(k\) 的圈跑完 \(i\) 圈的最小代价;然后大于等于 \(k\) 的圈我们贪心选,算出 \(g_i\) 表示只用大于等于 \(k\) 的圈跑完 \(i\) 圈的最小代价,将两部分合并即可。

由于到 \(k\ge\sqrt t+1\),复杂度为 \(O(n^2k+m\log n)\)

Problem - 811E - Codeforces

据说可以猫树分治,或者线段树上合并并查集,做到很无脑的复杂度。

提供一个 \(O((q+m)n)\) 的做法,套用这题题解区第一篇题解的做法即可:P7295 [USACO21JAN] Paint by Letters P - 洛谷。下面复述一遍:

考虑平面图欧拉公式「点数 - 边数 + 面数 = 连通块数 + 1」。

难的是面数。考虑对整张图跑连通块求出每个面,然后给每个面一个关键点,每次查询可以先统计区域内的关键点数量,然后在减去多余贡献,多余贡献就是跨过区域边界的面,枚举边界即可。

Clique - 题目 - QOJ.ac

枚举最短线段,那么完全包含它的线段一定可以被选,现在考虑只包含左端点或右端点的线段,对于只包含左端点或右端点的线段集内部连边是合法的,现在只要求它们之间的连边合法。

\(in_i,out_i\) 表示在最短线段内部的长度与外部的长度,那么左部线段 \(i\) 和右部线段 \(j\) 能同时被选当且仅当以下条件至少有一个被满足(设 \(len\) 表示最短线段):\(in_i+in_j>len\)\(out_i+out_j>10^6-len\)

把左部线段表示成 \((in_i,in_j)\),右部线段表示为 \((len-in_j,10^6-len-out_j)\),画在二维平面上,那么每个左部点的右上方不能有右部点,用线段树对折线 DP 即可。复杂度 \(O(n^2\log n)\)

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

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

相关文章

POSIX兼容系统上read和write系统调用的行为总结

关于UNIX和Linux的宣传语中,一切皆文件应该是最广为人知的一句。 不管是普通文件,还是硬件设备、管道、网络套接字,在Linux甚至还有信号和定时器都共享一套相似的api,大家可以用类似的代码完成各种不同的任务,大大…

AI也能管文件?RustFS+Claude实现智能存储自动化!

AI也能管文件?RustFS+Claude实现智能存储自动化!2025年,当Claude 4.5宣布可​连续编程30小时不"断片" ​,而RustFS凭借零GC设计将存储性能提升42% 时,我们终于意识到:AI管理存储系统的时代已经到来。一…

跟着小码学算法Day16:对称二叉树 - 指南

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

摸鱼笔记[3]-给windows添加类似macOS的按空格预览

🌟 神器「QuickLook」让 Windows 也能像 macOS 一样,空格键一按👇 ✨ 视频 / 图片 / PDF / PSD / 压缩包…统统秒开!零加载零等待~摘要 🌟 神器「QuickLook」让 Windows 也能像 macOS 一样,空格键一按👇…

11.8 联考总结

11.8 联考总结 T1题意较复杂,读懂之后比较简单。发现T3是计数题,很好。先开 T3 ,比想象中简单,思路非常自然。回去看T2发现有简单 \(O(n\log n)\) 做法,84分!但我想得非常复杂,但还有更简单的 \(O(n^2)\),52分…

Spring BeanDefinition接口

[[Spring IOC 源码学习总笔记]] BeanDefinition BeanDefinition 主要是用来描述Bean,主要包括:Bean的属性、是否单例、延迟加载、Bean的名称、构造方法等。 简而言之: 在容器中的 一个Bean 对应一个 BeanDefinition…

pythontip 计算字符串中的音节数

编写一个程序来计算一个单词中的音节数。 音节之间由连字符分隔。例如: beau-ti-ful => 三个音节 cat => 一个音节 re-frig-er-a-tor => 五个音节 定义函数count_syllables()的函数,该函数接受一个参数word…

深入解析:26-基于STM32的小区智能井盖监测系统设计与实现

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

2025/11/09 LGNOIpR23

如果不是直接写 100pts 做法,就是赛时不会,或者对 AC 做法有很大启发。 T1 题意简述 求 \(a(1+p+pq)=n\) 整数解数量,其中 \(n\) 是给定的, \(p,q\) 均不能取 \(1\)。 sol 考虑试除法,一遍试出所有的 \(a\),然后…

Python “值层面” 该怎么说?别再混淆 “字面量” 与 “不可变对象”

为帮助Python入门者厘清“值/字面量/对象”的概念混淆,我将围绕“为什么‘a的值是10’表述不准确”这一痛点,结合内存模型与代码示例,详细解析字面量和不可变对象的区别,最终总结认知误区与正确表述方式。# Python…

11.7 联考总结

11.7 联考总结 T1比较简单,随便找找支配关系就做完了。T2之前听 nkp 讲过题意比较畏惧,简单思考了一下就放弃了。T3是很好的计数题,很容易想到 \(O(n^2)\) 做法。但是有个组合数下指标求和难以优化掉,尝试换别的做…

pythontip 返回字典的键值

编写一个程序,分别按字母顺序返回字典的键和值。 定义函数get_sorted_keys_values(),参数为dict_obj(字典类型)。 在函数内部,返回一个由两个列表组成的列表:一个列表是按字母顺序排列的字典键,另一个列表是它们对…

详细介绍:SQL入门:行列转换实战-从基础到高级

详细介绍:SQL入门:行列转换实战-从基础到高级pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", &…

折腾笔记[36]-调用海康SDK实现相机拍照

使用c#调用海康SDK实现相机拍照.摘要 使用c#调用海康SDK实现相机拍照. 前言 本文目的是分享人工踩坑经验, AI搜索引擎可以更快给出正确结果(用于投喂AI😂). 关键信息海康SDK版本: 4.6.x .net8框架 封装: HikVisionCo…

CF840C On the Bench 分析

题目概述 题目链接:https://www.luogu.com.cn/problem/CF840C。 给你 \(n\) 给数,将他们排列成一个序列并满足相邻两项 \(a_i,a_{i+1}\) 相乘不为平方数。问方案。 分析 我只说明一种解法,其他类的解法总结见:http…

HubSpot如何构建MCP服务器实现AI代理集成

HubSpot产品执行副总裁分享公司如何基于Model Context Protocol构建远程MCP服务器,详细解析技术架构选择、认证实现、与现有系统集成等核心挑战,以及AI代理在CRM领域的实际应用场景。HubSpot的MCP实现:CRM公司的AI代…

CSP-S 2025 趋势记

有个人 CSP-S 寄飞了,我不说是谁。感觉模拟赛也没啥动力打了。 T1 写了 \(10\) min 切了,非常自信。T2 写了 \(30\) min 被卡成 \(80\) 了,趋势。 然后开始传统艺能发呆,T3 看半天看错题了,看成可以替换无限次了,…

苹果手机iOS15.8.2 – 16.7.8最新越狱方法

支持设备 越狱支持所有 A9-A11 片上系统 (SoC)。您可以在下面找到兼容的 Palera1n 越狱 iPhone 和 iPad 的实际列表。越狱经过测试,可以在运行 iOS 15 的 iPhone X (GSM)、iPhone 8、iPhone 7 和 iPhone 6s上运行和工…

威联通NAS部署umami - 详解

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

后端八股之Redis - 详解

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …