2019.11.09题解

写在前面:

出题人为啥三道题一个中文两个英文感觉怪怪的

A. 合并集合

标签:

区间Dp

题解:

区间Dp的裸题,刚开考的时候有点紧张没想到Dp,打了一个假的贪心,后来想到Dp的时候觉得我打贪心就是个傻子

f[i][j]代表处理完[i,j]的最大收益:

f[i][j]=max{f[i][k]+f[k+1][j]+g[i][k]*g[k+1][j]}

其中g[i][j]代表[i,j]的不同元素个数,$ O(n^2) $预处理即可,总复杂度$ O(n^3) $

B. climb

标签:

二分+贪心

题解:

首先在可行范围内二分结束天数(可行范围指的是不会淹死且药品的增量为正,显然在这段区间内是单调的,而其他区间不会对答案产生贡献)

之后考虑枚举最后一天吃的药品,但是有一个问题:我们无法保证这个药片在最后吃时小D没有淹死,

所以继续二分出最大的能选的增量,之后就可以枚举并且O(1)查询啦

C. coin

标签:

博弈论之SG函数

题解:

30pts:考虑把行和列看成点,棋子看成边,边的权值就是是否为反,之后跑类似二分图染色的dfs,原理一样,只是相邻的颜色限制不同

100pts:只考虑有解的情况:对于每个联通块求出SG函数值,按奇偶分为

1>奇-偶/偶-奇 SG=2

2>奇-奇 SG=1

4>偶-偶 SG=0

最后把SG全部^即可

 

 

 

 

posted @ 2019-11-09 12:16  ATHOSD  阅读(140)  评论(4编辑  收藏  举报