长沙雅礼中学集训-------------------day3
今天的收获还是蛮大的,终于体会了一波在知识的海洋中遨游的美滋滋的快感。
T1:给你N个点的位置和他们的速度,这些点向一个方向移动,求前M次超越者的集合A和被超越者的集合B(集合为这些点的速度),以及从A和B中各取一个并相乘,第k小的那个积。
数据范围:N<=1e5,M<=1e5,K<=M*M,起始位置和速度<=1e9
emmmm,写的是10分的暴力,可是出了一些奇奇怪怪的问题没有拿到这十分。
10分:直接暴力的算出交点,并且排序即可。
30分:在算交点前二分出一个时间,让算出的每次超过的时间都小于这个二分出的时间,我们把这些点运动都画在一个平面直角坐标系中(就像物理中的s/t图像),二分时,将二分的值带入直线求出走的路程,将路程排序,每一条直线原来的位置减去 现在的位置就是它超过了多少条直线减去被超过的数量,将超过了一定数量的直线的贡献加 起来,这个数是小于实际值的,但是也能够二分出一个优秀的时间,总超越数小于m 即可。
然后将满足条件的交点丢入小根堆中,弹出前m 个。排序求k 大。
50分:在30分的基础上,二分求k,不用堆。
AC:考虑:两个点被超过的话,两个点只能是相邻的,用堆维护两个相邻的点,如果被超过就交换一下,当然用堆的话只能拿50分,要ac的话还是要和前面说的那个50分结合起来。
T2:这个题是我觉得出的真心良心的一道题,很美滋滋,因为这道题的暴力分给的非常足,暴力就有30,题目有一堆公式,这里就直接贴图片好了
这个题的30分是非常好拿的,可以把所有要用的全都给他暴力算出来,30分就美滋滋了,但是因为考试的时候那个d|n不知道是什么意思,所以这30分就没有拿到,很气。
AC:数学题当然还是要推公式,用斐波那契数列数列的通项公式,用二项式定理展开计算,有一部分可以用等比数列来计算出来,要注意讨论公比=1的情况,另一部分可以用莫比乌斯反演+筛法来计算(哎,这就是我们和湖南oi的差距吧)。自己已经把式子展开过试了试,发现了等比数列,但是莫比乌斯反演这种东西emmmmmm................
T3:给一个数组A[1...n],建立一个完全图,满足(u,v) ,边权为A[u]^A[v],求图的最小生成树和方案数(方案数需要mod 1e9+7)
20分:暴力dfs
50分:矩阵树定理(orz,这个真的听都没听说过)。
另外10分:数据约定全部A[i]=0,我觉得这个方案数就是n!/2,比如当n=5的时候,我们先确定1->2->3另外的4 5就有两种情况。这是在确定前三个的情况下,如果是前两个确定的话,由于第三位可以放3,4,5,所以方案数是2*3,那么当一个都不确定的时候就应该是2*3*4*5.出题人给的暴力说的是用cayley定理(orz又是没学过的)。
AC:我们将最高位为1的分成一堆(S),为0的分成一堆(T),连边的方式就是S成一个数,T成一棵树,S向T连接一条边(有证明的,这里略了),然后用trie树可以发现trie树的操作正好能够帮助我们分成这两堆,再贪心的求最小边就行。
今天下午讲的是字符串,大部分也都是学过的,唯独一个后缀树没学过,但是听讲课的大佬说后缀树大部分都是可以用后缀树组和后缀自动机完成的,虽然学会了后缀树的建树方法,但是还是不知道要怎么用。
下午收获最大莫过于用稳定的时间复杂度来求ac自动机的fail指针,复杂度可以稳定的达到字母集*n,而不是均摊到O(n),均摊的复杂度有时候能被卡到O(n^2)。
过了三天了,还是有一些感慨的,还是认识到了自己和别的大佬的差距,不论是思维结构还是知识的储备量,所以还是要加油吧。
总结:辣鸡ysc
长沙雅礼中学集训-------------------day3的更多相关文章
- 长沙雅礼中学集训-------------------day1(内含day0)
day0: 首先,请允许我吐槽一下: 1.那些一个人住一个标准房的人您们真的是#@**¥&%……#*()%……*()@Q$&. 2.感谢那些一个人住一个标准间的人,要不然我们也找不到这 ...
- 长沙雅礼中学集训-------------------day2
怎么说呢,今天的题特别的神奇,因为emmmmmm,T1看不懂(一直到现在还没有理解明白期望概率什么的),T2题面看不懂+扩展欧几里得求逆元怎么求我忘了,T3哇,终于看懂一题了,然而写了个50分的程序但 ...
- 【LOJ6067】【2017 山东一轮集训 Day3】第三题 FFT
[LOJ6067][2017 山东一轮集训 Day3]第三题 FFT 题目大意 给你 \(n,b,c,d,e,a_0,a_1,\ldots,a_{n-1}\),定义 \[ \begin{align} ...
- 【LOJ#6066】「2017 山东一轮集训 Day3」第二题(哈希,二分)
[LOJ#6066]「2017 山东一轮集训 Day3」第二题(哈希,二分) 题面 LOJ 题解 要哈希是很显然的,那么就考虑哈希什么... 要找一个东西可以表示一棵树,所以我们找到了括号序列. 那么 ...
- 2019暑期金华集训 Day3 字符串
自闭集训 Day3 字符串 SAM 考虑后缀树. SAM的parent树是反串的后缀树,所以后面加一个字符的时候相当于往串前面加一个字符,恰好多出了一个后缀. 于是可以以此来理解SAM. 每一条路径对 ...
- 2019暑期金华集训 Day3 图论
自闭集训 Day3 图论 NOI2019 D2T1 没有真正建出图来的必要,可以直接打取\(\min\)的\(tag\). 也可以把边压进堆里,然后变成一个二维清点问题(???),然后就线段树+并查集 ...
- 考前停课集训 Day3 匪
Day3——作死不可活的一天 Day3 今天下午才考 晚上时间少 下午网每断 因此我是PY的 然后被抓了 成绩做0分处理. 是啊,我只会抄题解. 其他什么都不会. 一无是处. 真的. 真实能力:ran ...
- 福州三中集训day3
Day3数据结构,强无敌. 基本讲的是栈,队列,链表,都是些还会的操作,然后接着讲的就比较心凉凉了,先讲了堆,然后是hsah 栈,队列,链表问题都不大,笔记记得都还好,堆就凉凉了. 不会不会不会,没学 ...
- 集训Day3
被疯狂造谣+请家长 但生活还得继续 ...今天的题口胡一下吧明天码 PKUSC2018 D1T1 对于x:若x不翻,则x的一半到x的数都不能翻 若x翻,则x到2x都得翻 剩下随便安排 排列组合一下 P ...
随机推荐
- NSScanner
NSScanner NSScanner:该类主要实现对字符串扫描.并且该扫描必须从头到尾扫描(也可以跳到指定的地方进行扫描),开始扫描必须应用到函数,连续的数字之间可以用空格隔开,如:35 15.2 ...
- pygame精灵类实现房子爆炸效果
# coding=utf8 import random import pygame from pygame.locals import * from cStringIO import StringIO ...
- OK335xS GPMC nand device register hacking
/********************************************************************************* * OK335xS GPMC na ...
- IIS 使用 HTTP/2
什么叫HTTP/2? HTTP 2.0即超文本传输协议 2.0,是下一代HTTP协议.是由互联网工程任务组(IETF)的Hypertext Transfer Protocol Bis (httpbis ...
- 在各OJ上的名号
POJ MekakuCityActors 牛客 MekakuCityActors hdoj MekakuCityActors 这几个难度较大,所以用Actors 博客 MekakuCityActor ...
- hdu1301 Jungle Roads 最小生成树
The Head Elder of the tropical island of Lagrishan has a problem. A burst of foreign aid money was s ...
- this的区别
数据中心:this与_this的区别 getSelectData:function(){ var _this=this; _this.queryAjax(URL.selectData,'','post ...
- ClickHouse 简单试用
ClickHouse 具有强劲的数据分析能力,同时支持标准sql 查询,内置了好多聚合参数 同时可以方便的使用表函数连接不同的数据源(url,jdbc,文件目录...) 测试使用docker安装 参考 ...
- 常见MQ流行度比较
MQ的流行度跟它的特性和应用场景密切相关,站在当下来看,kafka最火,rabbitmq用的也很多,ActiveMQ作为经典mq选择用它入门的也不少.
- Spring本质-AOP
一.我们在做系统设计的时候,一个非常重要的工作就是把一个大系统做分解, 按业务功能分解成一个个低耦合.高内聚的模块,就像这样: 但是分解以后就会发现有些很有趣的东西, 这些东西是通用的,或者是跨越多个 ...