Solution Set - 《赏竹而格之》
1.「GXOI / GZOI 2019」「洛谷 P5304」旅行者
Link & Submission.
经典二进制分组,没啥好说的。
2. 「SDOI 2019」「洛谷 P5361」热闹的聚会与尴尬的聚会
Link & Submission.
随便拓扑一发可以求到最大的 \(p\),进而得到 \(q\) 的目标值。我一看,精确求 \(q\) 是 NP-Hard?!好的我们 std::shuffle
一发依次选……我焯它过了?
确定性算法:注意到 \((p+1)(q+1)\ge n+1\),我们每次取 \(\arg\min\{d(u)\}\),将它和它的邻接点删掉,尝试构造独立集,同时用当前的 \(\min\{d(u)\}\) 和对应的图更新 \(q\) 度图,然后发现可行√
如果实现随意都是 \(\mathcal O(Tm\log m)\) 的。
3. 「LibreOJ NOI Round #1」「LOJ #508」失控的未来交通工具
Link & Submission.
我卡得比较久的地方是第一步转化的先入为主:觉得这个和同余最短路相关,继而想动态维护最短路之类的鬼东西……
图非常不可做,一般我们选择将路径特殊化:变成树边 + 环,但恼人的是这个“环”似乎并不独立于“路径”,我们必须先走到环上的点才能进入环。联系经典的异或路径问题,可以尝试一步构造,让环仅依赖于连通块存在:若想要加入一个环,我们从路径上一点从任意路径走向环,绕一圈,然后在这“任意路径”上往返 \(m\) 次即可。显然我们只需要关心所有环长的 \(\gcd\),并查集记录这一信息。
对于询问,可以转化成求 \(gx+my=\cdots\) 的整数解问题,虽然数学计算的 corner cases 很多但写题解就不重要了√ 复杂度是 \(\mathcal O(q\log V)\)。
Solution Set - 《赏竹而格之》的更多相关文章
- 「TJOI2013」循环格
题目链接 戳我 \(Solution\) 我们观察发现循环格要满足每个点的入度都为\(1\) 证明: 我们假设每个点的入读不一定为\(1\),那么必定有一个或多个点的入度为0,那么则不满足循环格的定义 ...
- [LeetCode] Backspace String Compare 退格字符串比较
Given two strings S and T, return if they are equal when both are typed into empty text editors. # m ...
- [Swift]LeetCode844. 比较含退格的字符串 | Backspace String Compare
Given two strings S and T, return if they are equal when both are typed into empty text editors. # m ...
- [Swift]LeetCode1030. 距离顺序排列矩阵单元格 | Matrix Cells in Distance Order
We are given a matrix with R rows and C columns has cells with integer coordinates (r, c), where 0 & ...
- [LeetCode] Domino and Tromino Tiling 多米诺和三格骨牌
We have two types of tiles: a 2x1 domino shape, and an "L" tromino shape. These shapes may ...
- LeetCode--844--比较含退格的字符串(java)
给定 S 和 T 两个字符串,当它们分别被输入到空白的文本编辑器后,判断二者是否相等,并返回结果. # 代表退格字符. 示例 1: 输入:S = "ab#c", T = " ...
- 【LeetCode题解】844_比较含退格的字符串(Backspace-String-Compare)
目录 描述 解法一:字符串比较 思路 Java 实现 Python 实现 复杂度分析 解法二:双指针(推荐) 思路 Java 实现 Python 实现 复杂度分析 更多 LeetCode 题解笔记可以 ...
- XAF 如何从Excel复制多个单元格内容到GridView(收藏)
XAF 如何从Excel复制多个单元格内容到GridView 2012年04月11日 ⁄ 综合 ⁄ 共 10998字 ⁄ 字号 小 中 大 ⁄ 评论关闭 how to paste some excel ...
- Q844 比较含退格的字符串
给定 S 和 T 两个字符串,当它们分别被输入到空白的文本编辑器后,判断二者是否相等,并返回结果. # 代表退格字符. 示例 1: 输入:S = "ab#c", T = " ...
随机推荐
- Jenkins Hackfest 用户体验文档报告
Jenkins 技术文档是我们项目的重要组成部分,因为它是正确使用 Jenkins 的关键.好的文档可以指导用户,并鼓励选择好的实现方式.这是用户体验的关键部分.在最近的 Jenkins UI/UX ...
- 服务器表单字符串转化Vue表单挂在到对应DOM节点
今天在项目开发中,遇到从后端返回的vue文件(包含template,js,css)的文件,试过用v-html解析文件,渲染到页面,但是无法渲染,后来去查了一堆资料,自己写了一个全局方法来解析这类文件 ...
- 【Java】单例设计模式
文章目录 单例设计模式 什么是设计模式 单例设计模式 实现 饿汉式 懒汉式 饿汉式与懒汉式的区别 饿汉式 懒汉式 单例模式的应用场景 单例设计模式 什么是设计模式 设计模式是在大量的实践中总结和理论化 ...
- Flowable实战(七)用户和组
在流程中,最重要的参与者是用户.流程定义了任务何时需要用户参与,什么用户可以参与. 组可以理解为我们常说的角色. Flowable中内置了一套简单的对用户和组的支持,身份管理(IDM ID ...
- GLPK下载安装
GLPK下载安装 下载 wget http://ftp.gnu.org/gnu/glpk/glpk-4.65.tar.gz tar -zxvf glpk-4.65.tar.gz 安装 如果你有管理员权 ...
- VictoriaMerics学习笔记(2):核心组件
核心组件 1. 单机版 victoria-metrics-prod 单一二进制文件 读写都在一个节点上 作者推荐单机版 特性 merge方式配置 通过HTTP协议提供服务 内存限制(防止OOM) 使用 ...
- http状态码 200 304 404 503等
浏览器采用http请求时,会封装http get等信息见下图请求头,然后服务器响应后回发一些信息,包括状态码,响应头,响应信息等等,如下图. 右上图可见两种状态码,一种是200 一种是304.其中20 ...
- 集合框架-ArrayList练习(去除ArrayList集合中的重复元素)
1 package cn.itcast.p3.arraylist.test; 2 3 import java.util.ArrayList; 4 import java.util.Iterator; ...
- JVM之Java内存区域
JVM之Java内存区域 世界上并没有完美的程序,但我们并不因此而沮丧,因为写程序本来就是一个不断追求完美的过程. 一.JAVA内存区域 谈及JAVA虚拟机运行时数据区域就不得不祭出这张经典的图了: ...
- Redis入门及环境搭建
一:Redis简介 Redis(Remote Dictionary Server 远程字典服务)是一个开源的(BSD许可的)内存数据结构存储,用作数据库.高速缓存和消息队列代理. Redis提供五大基 ...