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就好