Contest 985
A
均移到黑色或白色即可。
时间复杂度 \(O\left(n\log n\right)\)。
B
枚举每种开关判断是否有灯只能靠该种开关控制。
时间复杂度 \(O\left(nm\right)\)。
C
最短的木板必然作为某一个木桶的容积,所以我们可以根据 \(l\) 找出可能作为容积的最长的木板。
若可能作为容积的木板总数不足木桶总数就无解。
然后优先将长的作为容积的木板和不可能作为容积的木板配掉,这个比较显然。
最后如果不可能作为容积的木板不足了就继续贪心配一下,每次在剩下的所有木板中取最长或最短的 \(k\) 个,这个更显然了。
时间复杂度 \(O\left(nk\right)\)。
D
首先发现起始高度尽可能大一定是对的,反正可以放相同的高度进行调整。
举个栗子,绿色代表原有的堆,红色代表新增的堆:
\(\color{green}{\texttt{1 2 3 4 3 2 1}}\\\color{green}{\texttt{2 3 4 3 2 1}}\color{red}{\texttt{ 1}}\\\color{green}{\texttt{3 4 3}}\color{red}{\texttt{ 3 }}\color{green}{\texttt{2 1}}\\\color{green}{\texttt{4 3 3}}\color{red}{\texttt{ 3}}\color{green}{\texttt{ 2 1}}\\\color{red}{\texttt{5 }}\color{green}{\texttt{4 3 2 1}}\color{red}{\texttt{ 1}}\)
先判掉最大高度(这里也是起始高度)\(top\) 小于 \(h\) 的情况,此时必定为一个不升序列,且必定为一个下降序列插入至多一堆。
接下来的情况起始高度必定为 \(h\),此时先是一个不降序列,然后是一个不升序列。同样地,最大高度 \(top\) 越大越好。
可以先把不升序列中 \(1\sim h-1\) 这一段的贡献减掉,即 \(n\gets n-\frac{h\left(h-1\right)}{2}\)。
\]
\]
\]
\]
接下来要处理多出来的沙袋。注意,最坏情况可能要插入最多两堆,举个栗子:
x x+1 x
x x+1 x+1 x
x x+1 x+1 x+1 x
三堆及以上最大高度可以达到 \(x+2\),具体可以手玩一下。
时间复杂度 \(O\left(1\right)\)。
E
简单 dp。
令 \(f_i\) 表示前 \(i\) 个数是否有满足条件的分组方案,转移的时候枚举当前组的开头即可,但直接这么做是 \(O\left(n^2\right)\) 的。
发现合法的第一个转移点单调不降,而我们又只关心是否,所以可以用一个普通队列来维护,时间复杂度 \(O\left(n\right)\)。
F
对于每个字母,如果前一个区间中它的哈希值和后一个区间中某个字母的哈希值一样,则这两个区间是匹配的。
至于区间 \(l\sim r\) 的哈希值,它等于 \(r\) 的哈希值减去 \(l-1\) 的哈希值与基数的 \(r-l+1\) 次幂的积,就和你某个进制的数取后面一段是一样的。
时间复杂度 \(O\left(n+m\right)\)。
G
鸽了。
Contest 985的更多相关文章
- Codeforce Div-2 985 C. Liebig's Barrels
http://codeforces.com/contest/985/problem/C C. Liebig's Barrels time limit per test 2 seconds memory ...
- Codeforces Educational Codeforces Round 44 (Rated for Div. 2) F. Isomorphic Strings
Codeforces Educational Codeforces Round 44 (Rated for Div. 2) F. Isomorphic Strings 题目连接: http://cod ...
- Codeforces Educational Codeforces Round 44 (Rated for Div. 2) E. Pencils and Boxes
Codeforces Educational Codeforces Round 44 (Rated for Div. 2) E. Pencils and Boxes 题目连接: http://code ...
- B. Switches and Lamps
链接 [https://codeforces.com/contest/985/problem/B] 题意 给你n,m,分别是n个开关,m个灯 给一个n*m的字符矩阵aij=1,表示i可以控制j这个灯 ...
- A. Chess Placing
链接 [https://codeforces.com/contest/985/problem/A] 题意 给你一个偶数n,输入n/2个数,代表棋子的位置,有一个1*n的棋盘是黑白相间的 问你使得所有棋 ...
- Educational Codeforces Round 44 (Rated for Div. 2)
题目链接:https://codeforces.com/contest/985 ’A.Chess Placing 题意:给了一维的一个棋盘,共有n(n必为偶数)个格子.棋盘上是黑白相间的.现在棋盘上有 ...
- CF练习记录
2018/5/6 Codeforces Round #478 (Div. 2) C http://codeforces.com/contest/975/problem/C Valhalla Siege ...
- 栈 && 教授的测试
卡特兰数:https://blog.csdn.net/wu_tongtong/article/details/78161211 https://www.luogu.org/problemnew/sho ...
- Contest - 多校训练(985专场) Problem C: 985的方格难题
题目链接:http://acm.zzuli.edu.cn/zzuliacm/problem.php?cid=1157&pid=2 Description 985走入了一个n * n的方格地图, ...
随机推荐
- App 后台架构
转载请注明出处:http://blog.csdn.net/smartbetter/article/details/53933096 做App做的久了,就想研究一下与之相关的App后台,发现也是蛮有趣的 ...
- 最全总结 | 聊聊 Python 办公自动化之 Excel(上)
1. 前言 在我们日常工作中,经常会使用 Word.Excel.PPT.PDF 等办公软件 但是,经常会遇到一些重复繁琐的事情,这时候手工操作显得效率极其低下:通过 Python 实现办公自动化变的很 ...
- 当eclipse调用tomcat的时候发生了什么?
下午在看<tomcat权威指南>的时候想到了这么一个问题:当我在eclipse里调用本机上的一个tomcat运行一个web项目的时候,都发生了什么? 之前做本科毕设的时候用的是MyEcli ...
- Redis学习笔记(八)——持久化
一.介绍 Redis的所有的数据都存在内存中,然后不定期的通过异步方式保存到磁盘上(这称为"半持久化模式"):也可以把每一次数据变化都写入到一个append only file(a ...
- Tensorflow学习笔记No.9
模型的保存与恢复 介绍一些常见的模型保存与恢复方法,以及如何使用回调函数保存模型. 1.保存完整模型 model.save()方法可以保存完整的模型,包括模型的架构.模型的权重以及优化器. model ...
- Luogu P3757 [CQOI2017]老C的键盘
题目描述 老C的键盘 题解 显然对于每个数 x 都有唯一对应的 \(x/2\) , 然而对于每个数 x 却可以成为 \(x*2\) 和 \(x*2+1\) 的对应数 根据这一特性想到了啥??? 感谢l ...
- AWS SDK 使用说明
AWS 的Python SDK包名为 boto3, 可以使用命令pip install boto3安装使用 BOTO3中的基本概念 boto3提供了两个级别的接口来访问AWS服务:High Level ...
- (四)HTTP消息报头
HTTP消息由客户端到服务器的请求和服务器到客户端的响应组成.请求消息和响应消息都是由开始行,消息报头,空行(只有CRLF的行),消息正文组成.对于请求消息,开始行就是请求行:对于响应消息,开始行就是 ...
- .netcore跨域设置
跨域 广义上讲,跨域是指一个域下的文档或者脚本试图去请求访问另一个域下的资源(像我们直接通过代码使用http请求资源,或者是使用辅助工具(例如postman)是可以直接访问的,没有跨域的概念):而我们 ...
- 【应用程序见解 Application Insights】Application Insights 使用 Application Maps 构建请求链路视图
Applicaotn Insigths 使用 Application Maps 构建请求链路视图 构建系统时,请求的逻辑操作大多数情况下都需要在不同的服务,或接口中完成整个请求链路.一个请求可以经历 ...