CF768
Codeforces Round #406 (Div. 1)
A.Berzerk
考虑先手必胜态,一定是先手移动到某一个位置以后,这个位置是后手的必败态
考虑先手必败态,一定是无论先手如何移动,先手所能一道的任何位置都是后手的必胜态
基于此,我们可以直接记忆化搜索
可能题目比较煞笔我的搜索姿势不好,由于loop的关系,我需要正着和倒着各搜一遍才行
B.Legacy
很显然这是最短路
但是有到区间的边
考虑用线段树辅助建图
一颗线段是表示由区间出发的点,即2类型的边,默认所有点对应的叶节点指向所有点,显然,线段树中父节点应该可以花费0通往儿子节点,然后2类型的边,从线段树连向对应的点即可
需要另外一颗线段树,来建出3类型的边,与2相似,显然,线段树中儿子节点应该可以花费0通往父节点,所有的点指向其对应的叶子结点,3类型的边有对应的边指向第二课线段树中的点即可
这是一张稠密图,所以直接跑dij即可
C.Till I Collapse
显然,贪心策略是正确的,考虑优化
数组f[i][j]表示范围[i,j)之内,如果不存在和a[j]相等的数,那么f[i][j]=1,反之f[i][j]=0
对于每一个f[i]我们可以构建一个线段树来快速的求解,考虑的内存,我们用主席树
那么对于每一个k,我们只需要二分即可
复杂度∑ans(k)<=nlogn,那么,直接二分的话,会使复杂度带3个log,会TLE
考虑直接在主席树上二分,可以化掉一个log
D.Rap God
开起来是一道树分治,不过很繁琐啊
弃疗咯...............
E.ALT
只会简单的建图啊
用二分图来建图
把每一个公民看作是第一部分的一个点,第二部分的每一个点对应树上的一条路径
当且仅当,公民x,从xi-->xj经过了节点j,那么从第一部分的点x向第二部分的点y连边
这样以后,我们所需要解决的问题就成了二分图点的最小覆盖
二分图点的最小覆盖是说要把每一条边,至少一个顶点包含在所求集合内,对于这道题目,这样,来建图显然是正确的
然后一个性质就是说二分图的|最小点集|=|最大匹配|
那么直接跑二分图匹配时间复杂度显然是过不去的
然后就gg了........
CF768的更多相关文章
随机推荐
- MySQL迁移升级解决方案
任务背景 由于现有业务架构已不能满足当前业务需求,在保证数据完整的前提下,现需要将原有数据库迁移到另外一台单独的服务器上,在保证原有服务正常的情况下,将原有LAMP环境中mysql数据库版本5.6.3 ...
- 这一千个Python库,总有你想要的!
环境管理 管理 Python 版本和环境的工具 p – 非常简单的交互式 python 版本管理工具. pyenv – 简单的 Python 版本管理工具. Vex – 可以在虚拟环境中执行命令. v ...
- apply 与 lambda
Python中的lambda和apply用法 https://blog.csdn.net/anshuai_aw1/article/details/82347016
- android自动化测试之Monkey--从参数讲解、脚本制作到实战技巧
视频: http://v.youku.com/v_show/id_XODcyMjM1MDA4.html?from=y1.2-1-87.4.4-1.1-1-2-3 PPT: http://www.doc ...
- 评估后Vista时代系统内核模式安全性
Windows Vista与之前的MS Windows版本(包括WindowsXPSP2)相比增加了很多的安全性.Vista新安全性的特征可以包括以下几个方面: 驱动签名 路径保护 内核模式代码完整性 ...
- css 阴影使用
文本阴影 p{ text-shadow: 5px 5px 5px #FF0000; } text-shadow: h-shadow v-shadow blur color; text-shadow: ...
- 如何利用App打造自明星实现自盈利
1.了解各个概念 为了大家都能看懂这篇文章,先说明几个概念. App(Application):可以在移动设备上使用,满足人们咨询.购物.社交.娱乐.搜索等需求的一切应用程序. ...
- C++ 获取网页源码码的操作
#include <stdio.h>#include <windows.h>#include <wininet.h>#pragma comment(lib,&quo ...
- 安装anaconda并配置环境
安装anaconda的步骤 1.确定系统信息 uname -a 2.下载对应版本 3.sh 安装shell脚本 4.添加到对应路径 5.安装完anaconda之后,创建虚拟环境 conda creat ...
- Spring整合Junit进行单元测试
I. 加入依赖包 Spring Test (如spring-test-2.5.4.jar) JUnit 4 Spring 其他相关包 II.新建Junit Test Case III.读取配置文件 @ ...