ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

模拟测试60

2019-10-05 16:52:05  阅读:270  来源: 互联网

标签:iy jy limits sum 2y 60 测试 array 模拟


T1:

  约瑟夫问题。

  经证(da)明(biao)可知,最终答案计算方法是:

    答案由$1$开始,每次加$m$,若大于次数加一,就对次数加一取模。

  可以$O(1)$计算每次取模的位置,取模不超过$mlogn$次,于是时间复杂度为$O(mlogn)$。

T2:

  普及:向量叉积:$v_1=(x_1,y_1),v_2=(x_2,y_2) \Rightarrow \vec{v_1}\times \vec{v_2}=x_1*y_2-x_2*y_1$

  然而我只会拆平方干推式子:

    $\large \begin{array}{ll} ans &=& \sum \limits_{i=l}^r \sum \limits_{j=i+1}^r (v_i \times v_j)^2 \\ &=& \sum \limits_{i=l}^r \sum \limits_{j=i+1}^r (x_iy_j-x_jy_i)^2 \end{array}$

  考虑拆平方:

    $\large \begin{array}{ll} ans &=& \sum \limits_{i=l}^{r} \sum \limits_{j=i+1}^r (x_i^2y_j^2+x_j^2y_i^2-2x_iy_ix_jy_j) \\ &=& \sum \limits_{i=l}^r \sum \limits_{j=i+1}^r x_i^2y_j^2 + \sum \limits_{i=l}^r \sum \limits_{j=i+1}^r x_j^2y_i^2 - \sum \limits_{i=l}^r \sum \limits_{j=i+1}^r 2x_iy_ix_jy_j \\ &=& \sum \limits_{i=l}^r \sum \limits_{j=l}^r [i!=j]*x_i^2y_j^2 - \sum \limits_{i=l}^r \sum \limits_{j=l}^r [i!=j]*x_iy_ix_jy_j \\ &=& \sum \limits_{i=l}^r x_i^2 (\sum \limits_{j=l}^r y_j^2 -y_i^2) - (\sum \limits_{i=l}^r x_iy_i (\sum \limits_{j=l}^r x_jy_j - x_iy_i)) \\ &=& \sum \limits_{i=l}^r x_i^2 \sum \limits_{j=l}^r y_j^2 - \sum \limits_{i=l}^r x_i^2y_i^2 - (\sum \limits_{i=l}^r x_iy_i \sum \limits_{j=l}^r x_jy_j - \sum \limits_{i=l}^r x_i^2 y_i^2) \\ &=& \sum \limits_{i=l}^r x_i^2* \sum \limits_{i=l}^ry_i^2 - (\sum \limits_{i=l}^r x_iy_i)^2\end{array}$

  线段树中维护$\sum \limits_{i=l}^r x_i^2$,$\sum \limits_{i=l}^r y_i^2$和$\sum \limits_{i=l}^r x_iy_i$即可。

  时间复杂度$O((n+m)logn)$。

T3:

  经典的LCIS(最长公共上升子序列)问题。

  设$dp[i][j]$为第一个串考虑到第$i$位,第二个串选择第$j$位的最优答案。

  则有状态转移方程:
    $dp[i][j]=\max \limits_{k<j}^{b_k<a_j}\{dp[i-1][k]\}+1$

  我们发现第二维只能从小向大转移,所以从小到大枚举,同时更新当前最优答案,直接更新即可。

  至于方案,记录转移前驱即可。

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

标签:iy,jy,limits,sum,2y,60,测试,array,模拟
来源: https://www.cnblogs.com/hz-Rockstar/p/11625014.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有