2021.11.13模拟赛总结

时间安排

7 : 50 − 8 : 10 7:50-8:10 7:508:10 把四道题都看了一遍,T1二分查找,T2像是dp,T3高精?T4应该是个找规律,而且看着就是CF的题。
8 : 10 − 8 : 50 8:10-8:50 8:108:50 就用set和lower_bound模拟整个查找的过程,二分求出下一个点所在的位置。
8 : 50 − 9 : 40 8:50-9:40 8:509:40 对于T2,我一直在想到dp,但是发现很难转移,因为你加入一个点后会对后面产生影响,我想了好几种状态: f i f_i fi 表示有 i i i 个人投票的最小代价, f i f_i fi 表示贿赂了 i i i 个人的最小代价等,但都不怎么会转移,所以就写了个20分就去看T3了。
9 : 40 − 10 : 40 9:40-10:40 9:4010:40 对于T3,我的第一想法是高精dijkstra裸题,但是高精不会,所以考虑利用模数写科学计数法,即对于一个数记录 x x x y y y 表示 ( 1 0 9 + 7 ) x + y (10^9+7)x+y (109+7)x+y,然后跑最短路的时候优先比较 x x x,但不知道为什么就是答案不对,我查了20分钟也查不出来,感觉写得没什么问题。
10 : 40 − 11 : 50 10:40-11:50 10:4011:50 对于T4其实我想的时间是最长的,首先考虑无解的情况,不难发现每加入一个长度为 a i a_i ai 的链都可以增加 a i − 2 a_i-2 ai2 个白点,所以无解的情况其实就是全部加起来再减后的值小于 k k k,然后考虑有解的情况,首先对于一条链,肯定是中间的那个节点要连接,然后考虑多次连接显然不优,因为你每次连接都至少会增加1的距离,所以我的想法是贪心的找到第一个大于等于 k k k 的位置,然后用堆来维护深度,然后在找地 k k k 小。
11 : 50 − 12 : 10 11:50-12:10 11:5012:10 提交。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值