喜闻乐见的毒瘤测试 19/09/12

T 1 T1 T1 排序, T 2 T2 T2 读优顺便膜
T 3 T3 T3 ,题意:一般图最大独立集, n &lt; = 100 , m &lt; = 3000 n&lt;=100, m&lt;=3000 n<=100,m<=3000
解:一直没有思路,结果最后翻 std 发现是 dfs 气得要死
但也不是毫无收获,询问 zxy 哥哥后发现有一种值得学习的乱搞法
每次 r a n d o m s h u f f l e randomshuffle randomshuffle,从前面开始选,如果有限制就不选了,然后大概可以做 1 e 4 1e4 1e4次趋近正解
T 4 T4 T4,题意:两个数列两两相乘求第 k 大, n &lt; = 1 e 4 n &lt;= 1e4 n<=1e4
解:二分 k,check 的时候继续二分
T 5 T5 T5,题意:给 n 条线段,求两两不相交能覆盖的最大值, n &lt; = 5000 n&lt;=5000 n<=5000
解:很明显要么按左端点排,要么按右端点排,不妨就按右端点排了吧,考虑DP
f i f_i fi 表示到 i 的最长覆盖, f i = m a x ( f j ) ( e d j &lt; s t i ) + l e n i f_i = max(f_j)(ed_j &lt; st_i)+len_i fi=max(fj)(edj<sti)+leni
然后 n 可以出到 1 e 5 1e5 1e5用树状数组维护一下
T 6 T6 T6,一个图,割掉一些点,使剩下的最大连通块 s i z &lt; n / 2 siz &lt; n/2 siz<n/2,
删去的最大点为 k, 求 k 的最小值, n &lt; = 1000 n&lt;=1000 n<=1000
解:二分可以过,但是每次并查集要重新插,发现可以倒着来,每次插进去,如果 m x s i z &gt; = n / 2 mxsiz &gt;= n/2 mxsiz>=n/2那么当前的就是答案了

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

FSYo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值