模拟53 题解


A. u

一眼差分,在斜线上加一减一。

然后发现这样的复杂度是$O(nq)$的,似乎不是很好过。

然后发现打差分标记的形式也是连续的,所以差分两次就完了。

 

 

 

B. v

最优决策问题,一般倒着转移,$O(n*2^n)$的dp是显然的。

考试时一直在想能否改成三进制状压,只压15位状态,表示距离边界距离为i有多少个白球。

然后发现没有办法确定某个状态会转移到谁,于是打了全部部分分。

其实仔细想想就可以发现,状态数不会很多。

对于剩余球比较多的情况,状态数不会超过$C_n^i$,

对于剩余球比较少的情况,状态数不会超过$2^i$。

所以正解其实是用hash表记忆化状压搜索。

其实状态数不会超过$\sum \limits_{i=1}^{n+1} fib_i$,证明见评论区。

PS:证明全靠大神cbx提携。

 

 

 

C. w

首先应当发现一条性质,如果只考虑进行操作的边,那么答案为这些边造成的奇数度数的点数除2。

在这个奇数度数点最少的前提下,应当使总长度最小。

所以用一个pair来进行转移,first记录奇数点个数,second记录总长度。

因为一个点可能指向多个点,应当用一些东西辅助转移。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM