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的更多相关文章

随机推荐

  1. stm32之PWM学习

    下图是一个STM32普通PWM形成的图形原理说明 自动重装载寄存器(ARR)用于确定波形的频率(即周期).捕获比较寄存器(CCRx)(用于确定占空比的) PWM的工作过程如下:首先ARR寄存器里面的值 ...

  2. ubuntu更新内核后卡在自检无法开机的解决方法

    下载deb包安装,重启后卡在自检,黑屏. 重启进旧内核,仍然卡在自检,黑屏. 强制关机后再重启,在grub按e修改启动项,改成直接进命令行模式.使用 sudo apt-get remove linux ...

  3. centos7 bond 和 网桥配置

    rhel7系统bond配置(更新版本):https://www.cnblogs.com/zhangjianghua/p/9119808.html Bonding的模式一共有7种: 1.mode=0(b ...

  4. LA 3790 Overlapping Squares DFS

    题意: 给出一个字符矩阵,问能否是不超过6个2×2的正方形组成的. 分析: 每次找一个最表面的正方形然后DFS就好了. 一个正方形被移开后,用一个特殊符号标记上,下次再匹配的时候就直接忽略这些位置. ...

  5. HDU 5468 Puzzled Elena 莫比乌斯反演

    题意: 给出一棵树,每个点上有权值.然后求每棵子树中与根节点互质( \(gcd(a, b) = 1\) )的节点个数. 分析: 对于一颗子树来说,设根节点的权值为\(u\), \(count_i\)表 ...

  6. PHP define() 定义常量

    PHP define()函数定义了运行时的常量, 具体语法如下所示: (PHP 4, PHP 5, PHP 7) define — Defines a named constant bool defi ...

  7. C语言总结(5)

    一.函数的定义: 函数是一个完成特定工作的独立程序模块,包括库函数和自定义函数.例如:scanf(),printf()为库函数,cylinder(),fact()为自定义函数. 函数定义的一般形式: ...

  8. [Pandas技巧] 如何把pandas dataframe对象或series对象转换成list

    import pandas as pd >>> df = pd.DataFrame({'a':[1,3,5,7,4,5,6,4,7,8,9], 'b':[3,5,6,2,4,6,7, ...

  9. Lyft Level 5 Challenge 2018 - Final Round (Open Div. 2) A. The King's Race

    http://codeforces.com/contest/1075/problem/A On a chessboard with a width of nn and a height of nn, ...

  10. HDU——1027Ignatius and the Princess II(next_permutation函数)

    Ignatius and the Princess II Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K ( ...