ABC318 A-G 题解
A
枚举 \(1\sim n\) 的每个数,判断是否有 \(i-M\equiv 0\pmod P\) 即可。
B
暴力覆盖即可,注意 \(x,y\) 均是左开右闭。
C
贪心的想,如果要替换 \(i\) 项,那必然是替换最大的 \(i\) 项,因此只需要对 \(f\) 排序,预处理后缀和后再扫一遍取替换前 \(i\) 项的最小值即可。
D
状压 DP,设 \(f_s\) 表示选择若干边的最大价值,使得 \(s\) 状态中的所有点都被选择,那么可以得到转移方程:
\]
E
对于不同的值分别考虑,设当前考虑的值为 \(i\),我们考虑一对在序列中相邻的值,其下标分别为 \(l,r\),那么它对 \(i\) 产生的贡献为:
\]
其中,\(\text{lnum}\) 表示在 \(l\) 左侧的值为 \(i\) 的数的个数,\(\text{rnum}\) 表示在 \(r\) 右侧的数的个数。
再将所有贡献累加即可。
(注意边界)
F
我们考虑可行性发生变化的点,也就是说,我们需要找出所有满足 在这个点可行,在这个点左侧或右侧不可行 的所有点,容易发现,这样的点的数量是 \(O(n^2)\) 的,且一定等于 \(X_i\pm L_j\)。
所以我们可以将所有的 \(X_i\pm L_j\) 排序,如果两个相邻的点都可行,那么这两个点之间的区间都可行。
因此,我们只对所有这样的点进行一遍暴力 \(O(n\log n)\) 的 check,总时间复杂度为 \(O(n^3\log n)\)。
(还有一些 \(\pm 1\) 的边界问题需要注意)
G
考虑网络流,先将所有点拆成入点和出点,入点向出点连流量为 \(1\) 的边,对于原图中的边 \(e=(u,v)\),从 \(u\) 的出点向 \(v\) 的入点,\(v\) 的出点向 \(u\) 的入点连流量为 \(+\infty\) 的边。再从源点向 \(B\) 连流量为 \(2\) 的边,\(A,C\) 向汇点连流量为 \(1\) 的边,跑一遍 dinic,只需要判断最大流是否为 \(2\) 即可。(注意 \(B\) 的入点向出点连边权为 \(2\) 的边)
由于 dinic 一次增广最大流至少增加 \(1\),而最大流至多为 \(2\),故最多只需要增广两次,也就是只会进行 \(2\) 遍 bfs 和 dfs,因此时间复杂度是 \(O(n)\) 的。
(空间要开到 \(1.2\times 10^6\))
ABC318 A-G 题解的更多相关文章
- 洛谷P3104 Counting Friends G 题解
题目 [USACO14MAR]Counting Friends G 题解 这道题我们可以将 \((n+1)\) 个边依次去掉,然后分别判断去掉后是否能满足.注意到一点, \(n\) 个奶牛的朋友之和必 ...
- 洛谷P2115 Sabotage G 题解
题目 [USACO14MAR]Sabotage G 题解 本蒟蒻又来了,这道题可以用二分答案来解决.我们可以设答案最小平均产奶量为 \(x \ (x \in[1,10000])\) .然后二分搜索 \ ...
- P2882 Face The Right Way G 题解
题目 Farmer John has arranged his N \((1 ≤ N ≤ 5,000)\) cows in a row and many of them are facing forw ...
- Hdoj 2454.Degree Sequence of Graph G 题解
Problem Description Wang Haiyang is a strong and optimistic Chinese youngster. Although born and bro ...
- P2341 [USACO03FALL][HAOI2006]受欢迎的牛 G 题解
原题链接 POJ的链接 简要题意: 给定一张图,求多少个点,每个点都能到达它. 本题作为强连通分量的入门题. 何为强连通分量?有什么用? 下面一一解释. 首先,我们要确认,这道题目如果不用强连通分量而 ...
- USACO07NOV Cow Relays G 题解
题目 For their physical fitness program, \(N (2 ≤ N ≤ 1,000,000)\) cows have decided to run a relay ra ...
- Codeforces Round #677 (Div. 3) E、G题解
E. Two Round Dances #圆排列 题目链接 题意 \(n\)(保证偶数)个人,要表演一个节目,这个节目包含两种圆形舞蹈,而每种圆形舞蹈恰好需要\(n/2\)个人,每个人只能跳一种圆形舞 ...
- 2018年第九届蓝桥杯【C++省赛B组】B、C、D、F、G 题解
B. 明码 #STL 题意 把每个字节转为2进制表示,1表示墨迹,0表示底色.每行2个字节,一共16行,布局是: 第1字节,第2字节 第3字节,第4字节 .... 第31字节, 第32字节 给定一段由 ...
- [NOI2009] 诗人小G [题解]
诗人小G 题目大意 给出 \(n\) 个长度不超过 \(30\) 的句子,要求你对其进行排版. 对于每一行,有一个规定的行标准长度 \(L\) ,每一行的不协调度等于该行的实际长度与行标准长度差的绝对 ...
- FJUT寒假作业第二周G题解快速幂
题目来源:http://210.34.193.66:8080/vj/Contest.jsp?cid=161#P6 题意:求n个数字的乘积对c取摸.主要就是有快速幂扩展到广义幂的过程. 首先题目 ...
随机推荐
- Vue3从入门到精通(三)
vue3插槽Slots 在 Vue3 中,插槽(Slots)的使用方式与 Vue2 中基本相同,但有一些细微的差异.以下是在 Vue3 中使用插槽的示例: // ChildComponent.vue ...
- SpringBoot 如何优雅的进行全局异常处理?
在SpringBoot的开发中,为了提高程序运行的鲁棒性,我们经常需要对各种程序异常进行处理,但是如果在每个出异常的地方进行单独处理的话,这会引入大量业务不相关的异常处理代码,增加了程序的耦合,同时未 ...
- selenium元素定位---ElementNotInteractableException(元素不可交互异常)解决方法
方法一: 增加强制等待时间 方法二: 使用js点击 element = self.browser.find_element(By.XPATH, "//td[@class='el-table_ ...
- C#.NET Framework 使用BC库(BouncyCastle) RSA 公钥加密 私钥解密 ver:20230706
C#.NET Framework 使用BC库(BouncyCastle) RSA 公钥加密 私钥解密 ver:20230706 环境说明: .NET Framework 4.6 的控制台程序 . 20 ...
- 微信小程序 - 视图与逻辑
[黑马程序员前端微信小程序开发教程,微信小程序从基础到发布全流程_企业级商城实战(含uni-app项目多端部署)] https://www.bilibili.com/video/BV1834y1676 ...
- altas2.1.0编译、安装、集成CDH6.3.2
目录 altas2.1.0编译.安装.集成CDH6.3.2 一: Atlas源码下载 二: Atlas源码编译 1.修改altas项目主pom文件,即需要编译的CDH6.3.2对应版本信息 2.Atl ...
- Solon v2.4.0 发布,Java 生态的新星燃起
Solon 是什么开源项目? 一个,Java 新的生态型应用开发框架.它从零开始构建,有自己的标准规范与开放生态(历时五年,已有全球第二级别的生态规模).与其他框架相比,它解决了两个重要的痛点:启动慢 ...
- K8S | Deployment应用编排
目录 一.背景 二.Deployment组件 1.简介 2.语法说明 三.基础用例 1.创建操作 2.查看信息 3.更新操作 4.删除操作 四.进阶用例 1.回滚操作 2.伸缩操作 3.暂停与恢复 五 ...
- Django: request.query_params取值
取值 request.query_params.dict(),将querydict对象转换为字典 参考链接 https://www.jianshu.com/p/f2f73c426623 https:/ ...
- 一文理解GIT的代码冲突
对于GIT,不知道有没有人和我一样,很长时间都是小心翼翼.紧张兮兮,生怕一不小心,自己辛苦写的代码没了. 特别是代码冲突,更是难到我无法理解,每次都要求助于百度,跟着人家的教程一步步解决,下一次还是这 ...