自闭集训 Day6
杂题选讲
CF round 469 E
发现一个数不可能取两次,因为1,1不如1,2。
发现不可能选一个数的正负,因为1,-1不如1,-2。
hihoCoder挑战赛29 D
设\(f(x)\)表示最后一个数小于等于\(x\)的答案,从左往右加入数并维护\(f(x)\)。
加入\(A\)的时候\(f(x)\)要加上\(|x-A|\),再对\(f(x-1)\)取min。
显然\(f(x)\)是一个分段函数,而且斜率是连续整数。
于是只需要维护拐点就可以知道函数长什么样。每次就是加入两个拐点,并删掉最右边的一个,用堆维护就没了。
CS Academy #32 G
设\(f_{i,j}\)表示放了\(i\)个数和为\(j\)的方案数,每次转移是多放一个1或是所有数加1。
考虑每个数\(s\)对答案的贡献,贡献次数就是\(\sum_{i=1}^{\infty} [至少i个当前的方案数]\)。
发现这东西刚好就是\(\sum_{i=1}^{\infty} f_{K-i,n-is}\),于是可以直接求和。
于是做完了……
THUPC 2017 I 小L的游戏
???
应该有比老师更优美的做法……
星空 by 杨家奇
首先这题显然是个循环卷积,模数998244353-1有因子17,所以不必担心。
设\(f_S\)表示在\(S\)中随便选的方案数,\(g_S\)表示\(S\)连通的方案数。(\(g_0=0\))
于是有\(f=e^g,g=\ln f\)。其中乘法为子集卷积。
考虑子集卷积的过程:记录\(f_{i,S}\),当且仅当\(|S|=i\)的时候\(f_{i,S}\)有值,然后把\(f_i\)看做一个元素,这个元素的乘法定义为或卷积,难么\(f*g\)就可以看做是多项式乘法,只不过乘完之后要把多余的元素清除掉。
把\(f_i\)做莫比乌斯变换,于是元素的乘法就是对应位置相乘。
然后把两维反过来变成\(f'_{S,i}\),此时枚举\(f'_S\),就真的变成多项式乘法了,于是\(\exp\)也就可以定义了。
于是\(\ln\)也可以定义出来了,于是就做完了。
SRM 702 Finding Friends
二分答案,每个点记录\(l_i,r_i\)表示左右最近的满足条件的点。
然后一个区间\([L,R]\)合法当且仅当每个点都有\(l_i\ge L\)或\(r_i\le R\)。
然后记录\(solve(L,R)\)表示\([L,R]\)里面是否有满足条件的区间。
从两边往中间扫,如果发现了必然不满足条件的点就删掉然后往两边递归。
惊奇地发现复杂度是对的,就做完了。
SRM 713 Coins Query
注意体积很小,可以只记最后100个状态,然后矩阵乘法。
注意转移矩阵相同,所以就\(O(n^3\log m)\)了。
VK Cup 2017 Round 3 F
考虑倍增,设\(f_{n,p}\)表示在\([1,n]\)里面选数,最大的奇偶性为\(p\)的生成函数。
倍增,随便转移。
我怎么永远都想不到倍增
SRM 715 Pre In Post
设\(f_{x,y,a,b,i}\)表示第一个序列\([a,a+i)\),第二个\([b,b+i)\),遍历方法是\(x,y\),是否可能。
如果遍历方法相同那么直接判是否全部相等。
如果不同,那么我们肯定可以知道根是什么。
如果有一个是中序遍历,那么变成了子问题。
否则,枚举分界点在哪里。
复杂度莫名其妙地就对了??
Codechef SNCKEL17
题目相当于动态修改边权,问最小生成树里面的最大边权。
可以LCT+线段树分治,\(O(n\log^2 n)\)。
R-C算法:
- Reduction。把修改涉及的边设成\(\infty\),跑最小生成树,不在其中的边肯定废了。
- Contraction。把修改涉及的边设成\(-\infty\),~~~,在里面的边肯定在里面,直接缩起来。
然后分治两边,同样可以证明\(O(n\log^2 n)\),然而不会证……
THUPC 2017 D
先随机一个初始解,然后调整。
找到一个挂了的点,调成一个似乎是ok的颜色(但可能调完之后某个邻居又挂了),用队列模拟这个过程。
每次调完之后两端颜色相同的边数减一,所以复杂度\(O(m)\)。
2019暑期金华集训 Day6 杂题选讲的更多相关文章
-
2019暑期金华集训 Day6 计算几何
自闭集训 Day6 计算几何 内积 内积不等式: \[ (A,B)^2\le (A,A)(B,B) \] 其中\((A,B)\)表示\(A\cdot B\). (好像是废话?) 叉积 \[ A\tim ...
-
正睿OI DAY3 杂题选讲
正睿OI DAY3 杂题选讲 CodeChef MSTONES n个点,可以构造7条直线使得每个点都在直线上,找到一条直线使得上面的点最多 随机化算法,check到答案的概率为\(1/49\) \(n ...
-
2019暑期金华集训 Day7 动态规划
自闭集训 Day7 动态规划 LOJ6395 首先发现这个树的形态没啥用,只需要保证度数之和是\(2n-2\)且度数大于0即可. 然后设\(dp_{i,j}\)表示前\(i\)个点用了\(j\)个度数 ...
-
2019暑期金华集训 Day7 分治
自闭集训 Day7 分治 主定理 由于我沉迷调题,这个地方没听课. 某些不等式 咕了 nth_element 使用快速排序的思想,选一个中间点,看左右有多少个. 期望复杂度\(O(n)\). 首先把一 ...
-
2019暑期金华集训 Day5 生成函数
自闭集训 Day5 生成函数 一般生成函数 无脑地把序列变成多项式: \[ \{a_i\}\rightarrow A(x)=\sum_{n} a_nx^n \] 形式幂级数 生成函数是一种形式幂级数. ...
-
2019暑期金华集训 Day3 字符串
自闭集训 Day3 字符串 SAM 考虑后缀树. SAM的parent树是反串的后缀树,所以后面加一个字符的时候相当于往串前面加一个字符,恰好多出了一个后缀. 于是可以以此来理解SAM. 每一条路径对 ...
-
2019暑期金华集训 Day3 图论
自闭集训 Day3 图论 NOI2019 D2T1 没有真正建出图来的必要,可以直接打取\(\min\)的\(tag\). 也可以把边压进堆里,然后变成一个二维清点问题(???),然后就线段树+并查集 ...
-
ZROI 暑期高端峰会 A班 Day5 杂题选讲
CF469E \(n\) 个需要表示的数,请使用最少的 \(2^k\) 或 \(-2^k\) 表示出所有需要表示的数.输出方案. \(n\le 10^5,|a_i|\le 10^5\). 首先每个数肯 ...
-
2019暑期金华集训 Day5 树上数据结构
自闭集训 Day5 树上数据结构 前置知识 点分治 边分治 树链剖分 LCT Top Tree LCT时间复杂度 线段树每次查询是严格\(\log n\)的,然而splay维护连续段的时候,如果每次查 ...
随机推荐
-
Gym 100703I---Endeavor for perfection(尺取)
题目链接 http://codeforces.com/problemset/gymProblem/100703/I Description standard input/outputStatement ...
-
osgi学习
Bundle可以被动态地安装.启动.停止和卸载.Bundle是服务(Service)和组件(Component)的载体.在OSGi中,每个Bundle都有自己独立于其他Bundle的ClassLoad ...
-
MySQL中的datetime与timestamp比较-------转载
原文地址http://database.51cto.com/art/200905/124240.htm MySQL中的datetime与timestamp比较 本文将通过实例比较MySQL中的date ...
-
PAT-乙级-1029. 旧键盘(20)
1029. 旧键盘(20) 时间限制 200 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 旧键盘上坏了几个键,于是在敲一段文字的 ...
-
《Genesis-3D开源游戏引擎完整实例教程-跑酷游戏篇03:暂停游戏》
3.暂停游戏 暂停游戏概述: 在游戏进行时,玩家有可能会遇到多种突发事件.在跑酷游戏中突发状况的发生对游戏的影响更甚,游戏进行时玩家死亡,游戏只能从头开始,那么如果因为外界因素而影响游戏的进行,显然是 ...
-
angular中ueditor插件的使用
#在angularjs中使用ueditor编辑器需要注意事项: 在ui-view中使用放置ueditor的div,页面加载时编辑器在页面中是不显示的,需要通过指令手动replay 例: /** * u ...
-
nginx开启后主机无法访问虚拟机的nginx解决方案
如果IP可以通的话 一般是防火墙引起 方法1.cat /etc/sysconfig/iptables # Generated by iptables-save v1. :: *filter :INPU ...
-
2D-2D:对极几何 基础矩阵F 本质矩阵E 单应矩阵H
对极约束 \[ \boldsymbol{x}_{2}^{T} \boldsymbol{F} \boldsymbol{x}_{1}=\boldsymbol{0} \quad \hat{\boldsymb ...
-
MSSQL2012中SQL调优(SQL TUNING)时CBO支持和常用的hints
虽然当前各关系库CBO都已经非常先进和智能,但因为关系库理论和实现上的限制,CBO在特殊场景下也会给出次优甚至存在严重性能问题的执行计划,而这些场景中,有一部分只能或适合通过关系库提供的hints来进 ...
-
拓扑排序(Topological Sort)
Graph 拓扑排序(Topological Sort) 假设一个应用场景:你用 C 编写了一个爬虫工具,其中有很多自定义的库:queue.c.queue.h.stack.c.stack.h.heap ...