模拟测试106

T1:spa

  断环成链并复制一倍,而后区间DP。排序

  设状态为合并区间$[l,r]$的最大得分。查询

  时间复杂度$O(n^3)$。时间

T2:
  最后一次向上爬不会滑下来,因而能够枚举最后一次吃的药丸。
枚举

  将全部药丸按照$A-B$排序,每次贪心地选择最大的几个值,二分出到达的天数。

  还须要判断中间高度是否严格大于$C$,若是不是,那么不能成功登顶。

  若是枚举的药丸不在前几个最大值中,直接用ST表查询$A-B-C$的最小值是否小于0;

  其余状况下,后面的数值会错位,再维护一个错位的ST表便可。

  时间复杂度$O(nlogn)$。

T3:

  由于两我的都要使本身的得分最大,因而若是有一种翻转方式能使棋子全都正面向上,对手必定会无条件地帮忙。

  因此先判断可否让全部棋子都正面向上。

  将全部行列看作点,棋子看做边,正面棋子所在行列合并,反面棋子所在行列连边。

  这样每条边两侧的状态都不一样。

  二分图染色就能够判断,而后根据$(n+m)$奇偶性判断$0/1$。

  而后根据奇偶分层,算出一个连通块的两个$si$。

  若是一个块为偶偶,那么这个块没有任何做用,由于不管如何都会抵消掉。

  若是一个块为奇奇,那么前后手交换。

  若是一个块为奇偶,先手能够控制本身下一次做为先手仍是后手  。

  若是奇奇块的个数奇数,先手必定能够变为后手,先手必胜。

  其他状况下若是奇偶块的个数为奇数,先手控场,必胜,反之先手必败

相关文章
相关标签/搜索