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的方格地图, ...
随机推荐
- java实现单链表、栈、队列三种数据结构
一.单链表 1.在我们数据结构中,单链表非常重要.它里面的数据元素是以结点为单位,每个结点是由数据元素的数据和下一个结点的地址组成,在java集合框架里面 LinkedList.HashMap(数组加 ...
- python机器学习实现人脸图片自动补全
人脸自动补全 关注公众号"轻松学编程"了解更多. 1.导包 import matplotlib.pyplot as plt import numpy as np import pa ...
- PageHelper使用步骤
一.导入jar包(maven构建导入坐标) <dependency> <groupId>com.github.pagehelper</groupId> <ar ...
- [LuoguP2161[ [SHOI2009]会场预约 (splay)
题面 传送门:https://www.luogu.org/problemnew/show/P2161 Solution splay 的确有线段树/树状数组的做法,但我做的时候脑残没想到 我们可以考虑写 ...
- think PHP5.1使用时 session重定向丢失问题
查了很多资料,也看了redirect底层代码,具体来说,还是多个用的地方不太对.做个笔记防忘记: 遇重定向后丢失session时: 1.php.ini配置文件,不要自动启动,默认是0,session. ...
- 神州笔记本电脑【K670D】安装 Ubuntu18.04 系列操作
一.使用U盘安装 Ubuntu 前的处理如下: 进入BIOS将SSD设为启动首选项 -> F10保存退出 -> 用方向键高亮ubuntu启动项 -> 按e键进入编辑状态 -> ...
- 计算机网络-DHCP协议抓包分析总结
前置问题:什么是(网络)协议? 网络协议为计算机网络中进行数据交换而建立的规则.标准或约定的集合. 而且: 一个网络协议至少包括三要素: 语法:用来规定信息格式;数据及控制信息的格式.编码及信号电平等 ...
- ()C++中的赋值运算符重载函数(operator=)
本文主要介绍C++中的重载操作符(operator)的相关知识. 概述 1.1 what operator 是C++的一个关键字,它和运算符(如=)一起使用,表示一个运算符重载函数,在理解时可将ope ...
- 17 c10k问题
所谓c10k问题,指的是服务器同时支持成千上万个客户端的问题,也就是concurrent 10 000 connection(这也是c10k这个名字的由来). 推荐: https://my.oschi ...
- Python图书管理系统
图书管理系统 功能简介 添加图书时,图书ID不能重复,图书名可重复 删除,查询,修改功能,输入图书名之后提供所有的同名的图书,用户可以按照图书序号对具体的一本书进行操作 显示书籍,分行显示,每行一本书 ...