4.25模拟赛总结
比赛历程
以下是价值低下的比赛的心路历程
约AM7:30,下发文件。
按照惯例打了一套快读和freopen,然后把文件都建好,以防提交时失误。
大概看了遍题目,基本没想到什么,然后回去看T1。
然后看T1,期望,题意还很简洁,明确的目标和看似熟悉的问题,感觉挺可做的样子。
大意是硬币有p的概率朝上然后求第一次连续出现k次朝上的期望步数。
比较困,似乎还有点头疼,于是开始无脑猜测:是概率乘积然后取倒数吗,反正实现也不难,敲出来看看。
大概十来分钟调了调,只过了第一个样例,第二个样例虽然不对,但我的答案*2-2就是答案了。
而且这样凑答案1也是对的。
不过这做法一看就假的离谱,随便再搞一个就不对了。
这个时候8点了,又瞎搞了一番,大概都8点半了,感觉有点不会了。丢着看T2。
T2看着不知道考什么,想着根据儿子多少来贪心选择,优先队列bfs,估计是对的
码完之后,测试前3个样例,非常对,第四个样例却错了,怀疑贪心失败,于是把只比较儿子多少改成儿子相等的时候比较子树大小
还是不对,很多个比答案大1,自闭了。
感觉贪心失败了。
AM9:00, 搞T3吧, 发现式子可以转化转化,但是都是没有用的转化。
中间似乎挺瞌睡的,迷茫了好久。
一直到十点半,中间大概干的事情就是调T2的贪心,然后T3瞎搞发现样例1的答案是个1,1,1,1,1,3
然后试了一下其它数据前边全是1,然后最后一位放L的情况,果然又不对了,但是发现如果枚举这个突变的断点
比如样例1变成 1,1,1,3,3,3 ,没有一开始的那个优秀,说明至少只有两个数存在的话应该保持前边都是一样的数,然后最后一个是L比较优秀
这个时候也没有想搜索怎么搜,脑壳疼。
这个时候我似乎还是0分,我想着这要是抱玲了就离谱了,想想还是T1好搞,搞T1吧。
又瞎搞了一会儿,终于在11点,想到以前有同学问过我期望的问题,他当时算这个期望步数是模拟抽取然后取平均值。
于是写了个模拟投硬币,终于有所发现,当p为1/3的时候, k递增时,答案(f_k=f_{k-1} imes1/p+1/p) ,好了可以递推了,有个50分的1e6可以搞
最后差点数组开小 , 不然就真抱玲了,真菜啊。
赛后发现
上午很多时间浪费了,状态很不好。
T1:
1 少了特判 10pts
2 明明知道了递推,这题的通项这么好求,就是个等比的前n项和 ,然而时间太少了。
T2:
ztw告诉我,我的重载运算符写错了 ......
我一开始难以置信 改了之后立马30pts
T3
可以搜,L<n,虽然考试注意到了,但是当时对T3是抵触的,脑袋是懵的。
简单题解
jyh 太神了!!
T1 就是那个式子,求下等比数列前n项和即可。
T2 (f_i=max{j+frac{s_j}{i}}) ,其中 (s_j) 是深度大于(j)的点的个数,然后(f_i)还有单调性,可以单调队列求斜率求出来。 想不到。
决策单调性什么的好久没练过了。
T3 这个可以找规律,考场上找到的结论是一个究极劣化版,但是确实满足序列的前(n-1)项最大要为((L-1)/2) .其实是能打表的
然后其实只要知道这个结论,最后的方案数是相当好求。
完结撒骨灰