7.5模拟赛

T1.toll

反向跑最短路,对于城市cost=ceil(mn/19)

Menteur-Hxy的解释:ceil(n/20)相当于取出至少1/20的部分,所以剩下了最多19/20的部分。

SPFA和Dijkstra都行,SPFA也卡不了。

还有,手c数组有风险!

T2.sort

写了80分O(n^2)网络流最大独立集,数组开小,挂了

是这样的,网络流(这里也就是Hopcroft-Karp),只适用于二分图,一般图的最大独立集是NP-Hard的,只能搜索了。

这个题的图惯性拆了点,也就能跑了,实际上这个图拆了点就是个二分图了,莫名其妙对了

正解LIS,可以证明一下:

首先,我们是连接逆序对,这些直接相连的点一定不同时在独立集中,而LIS序列一定没有逆序对,所以LIS一定在独立集中。

现在只需要证明LIS是最优解了。

考虑一个不在LIS中的元素x,如果要加入x,那么LIS就被破坏了,一定会产生至少一个逆序对,所以LIS至少是最优解。

O(nlogn)可过

T3.room

状压写挂,感觉自己好弱智

高估位运算的优先级,i&(1<<j))==0和i&(1<<j)==0是截然不同的两个东西...

转移忽略了不能转移的情况,也是最好考虑的情况

同时,SWHsz指出不能转移的情况不可以赋0,因为这样的情况可能只是目前达不到,之前可能已经转移过,直接continue就好

 

猜你喜欢

转载自www.cnblogs.com/ghostcai/p/9268610.html
7.5