模拟测试93

Posted hz-rockstar

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了模拟测试93相关的知识,希望对你有一定的参考价值。

T1:

  将序列求前缀和,题意转化为对于位置$i$和$j$,满足$i<j$,$a_i<a_j$并且$b_i<b_j$,最大化$j-i+1$的值。

  典型的三维偏需,可以CDQ做。

  更好的做法是按一维排序,然后用数状数组维护。

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

T2:

  每次可以选择一个根,将左右子树接上,可以区间DP。

    $dp[i][j]=min limit_{k=l}^r(dp[i][k-1]+dp[k+1][j])+sum(i,j)$。

  对于每一棵树,在其左侧添加节点,决策点不会右移,所以有决策单调性。

  在$dp[i][j-1]$和$dp[i+1][j]$的决策点之间枚举$k$即可。

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

T3:

  设$dp[i]$为由$i$到达终点的期望步数,$S$为$i$的出边集合,$a[i][j]$为临接,矩阵则:

    $dp[i]=sum limits_{j in S}frac{a[i][j]}{out[i]}dp[j]+1$。

  特别的$dp[T]=0$。

  可以做$n$次消元。

  然而每次仅有一行的方程不同,可以分治消元,每次消除一半的方程。

  由于每次消元的复杂度是$O(n^2(r-l))$,所以总复杂度为$O(n^3)$。

以上是关于模拟测试93的主要内容,如果未能解决你的问题,请参考以下文章

[考试反思]1029csp-s模拟测试93:殇逝

Apache如何进行模拟高并发压力测试?

vulstack红队评估

单元测试——使用模拟对象做交互测试

模拟测试特征和模拟方法

对于 Java 测试,我应该模拟客户端还是模拟服务器