3.14模拟赛总结
Posted Flame♡
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3.14模拟赛总结相关的知识,希望对你有一定的参考价值。
有一篇博文被人点赞了qwq!
不过那一篇其实比较胡诌…挠头,但还是感觉很惊喜
话说我果然是树懒吗…早上睡不醒 中午午觉往1h+睡(摇头)搞得人也很愧疚,感觉事情没有做好,跟摸鱼一样,人的心理压力就很大qwq,对自己就不是很满意
但老实说 写这个题解的时候还感觉头有点晕乎,太离谱了,我真的是树懒吧
时间安排
7.20-8.30(?或者到九点)
高强度犯困+间歇性思考,能有多困呢,中间去了个洗手间,走回来的时候闭眼哼歌都感觉貌似睡着了…
8.30-(大家发现题目貌似有一点锅)
思考T1,思考到部分分之后开始往正解上靠,这个 1 e 10 1e10 1e10 看着就很杜教筛… 然后就先脑了一下杜教筛的原理(时间-1s),然后开始硬找 g g g,实在找不到,就先打了个暴力验证一下自己的部分分思路,一切很顺利,直到 我开始测大样例
本来没发现什么问题,然后我看到它题目要求小数后六位,这个时候,我本着严谨的态度最后看了一下自己的输出
????
怎么四位以后不一样啊
检查+打表之后我仍然感觉自己没问题(老实说我现在也仍然也觉得他那个大样例是不是有问题)
这个时候我突然受了一点启发(写在后面题目分析里吧)
加了个剪枝跑路了
10.00(左右)?-12.00
看着时间有一点小慌,T2,T3的部分分都有一定的想法
先写了好写的T3第一档部分分,再写了T2第一档部分分(没调出来)
最后T3的第二档没写,真的写不完了,犯困的时间太久了
题目分析
T1
首先,对于所有比赛,用到的树一定小于等于2,且第二棵树一定是 P i ∗ B i P_i*B_i Pi∗Bi 最大的那个
如果钦定第一个树是
i
i
i ,那么答案就是
∑
j
=
1
m
(
1
−
p
i
)
j
−
1
∗
p
i
(
A
i
+
(
m
−
j
)
∗
p
k
∗
B
k
)
\\sum\\limits_j=1^m(1-p_i)^j-1*p_i(A_i+(m-j)*p_k*B_k)
j=1∑m(1−pi)j−1∗pi(Ai+(m−j)∗pk∗Bk)
m = 1 e 10 m=1e10 m=1e10 第一想法是杜教筛,但确实不知道怎么筛
但看着这个 ( 1 − p ) j − 1 (1-p)^j-1 (1−p)j−1 我有了一点大胆的想法
首先,可能成为答案的第一个数一定是 p p p 单调递减 a a a 单增里的(不然一定更不优)
其次 当 ( 1 − p ) (1-p) (1−p) 衰减次数过多时 就没有继续的必要了
所以加加剪枝+排序冲一下分
T2
对 c c c 跑一下最短路
然后询问dp
赛时一直挑不出来,到最后十几分钟迷过来
添加一个字符不一定是直接添加,也可以先填个别的再转换
裂开了直接…没时间改了
T3
部分分直接枚举+模拟
对于第二档 考虑有权值的边最多是 L L L 条
感觉可以枚举有权值的边,计算包含其的生成树个数
一会写一个试试吧
以上是关于3.14模拟赛总结的主要内容,如果未能解决你的问题,请参考以下文章