哦
今天上午依然是考试。
嗯,题目难度稍微有点大,不过靠暴力还是能拿到一些分的。
不知道为什么我的程序提交上去然后没有评测(庆幸)
我觉得叫上去可能最多50分吧·。
T1
这道题正解是二分答案(我真的没想到)。
二分最大重量的最小值,然后验证。
怎么验证呢,如果我们要验证一个值,那么比这个值小的杠铃无论怎么移动都是没有影响的,我们可以将它们先搬走,再看看剩下的比这个值大的杠铃是非在一行即可。
然后我写了个暴力。
和超哥交流之后惊人的发现我们第一题思路差不多。
主要就两点:
1.如果一对杠铃一个在上面,一个在下面的话是肯定要举起来的。
2.如果一对杠铃在同一行,他们之间就有其他杠铃,我们可以把中间这些杠铃搬走来配对,或者把两边任意一个搬到另一边。
这两种策略是必须要选一种的,至于要选哪种,要看中间的数的大小。如果中间的数有大于两边的数的数,那就移动两边;反之,移动中间。因为我们要的是最大重量的最小值吗。这个好像能拿不少分数。
说实话,T1还是挺简单的,如果想到二分答案的话
T2
这道题是毒瘤啊,想暴力都暴力不出来。。。。
结果正解还是DP。
老师讲的是先把全覆盖的线段拿出来,然后剩下的线段按有段点排序,形成一个阶梯。
再阶梯上做DP,然后把之前拿出的线段从大到小排序,根据贡献大小再加回去。
T3
这题是大毒瘤。
题目没看明白,我还以为这很简单搜一下就好了。
其实这道题目要用强连通分量+DP啊啊。
我还不会。。
下午:
先讲完题目,然后疯狂讲知识点。
讲得有点快,我还是有点懵啊。