zoukankan      html  css  js  c++  java
  • 10.5「嘟嘟噜」·「天才绅士少女助手克里斯蒂娜」·「凤凰院凶真」

    又是一部番????

    A. 嘟嘟噜


    以为是个神仙题,就只打了个约瑟夫问题,然后QJ了M==2的分,

    事实上因为M很小,可以让让轮数跳转,瞎算算就出来了.

    B. 天才绅士少女助手克里斯蒂娜


    考试一开始看错题了,样例过不了异常崩溃........

    1h过去了,我读错题了(一脸震惊)

    然后...好像是线段树,但不会维护.......

    好像式子能拆开,wc这怎么维护???

    after 10min 好像可以维护了...

    C. 凤凰院凶真


     没时间想了,事实上是一个裸的最长公共上升子序列

    考虑DP,f[i][j]表示序列1考虑到i,但不一定选,序列2考虑到j,但一定选。
    那么我们可以看出n^3的DP是裸的,只要再枚举一维k,用f[i-1][k]转移f[i][j]即可
    但是这题需要n^2思路
    对于当前i,j我们只需知道a[i]是否等于b[j]
    如果不等那么f[i][j]=f[i-1][j];
    否则,我们可以维护一个变量maxn,枚举每层i时,假如b[j]<a[i]我们都可以用f[i-1][j]更新a[i],因为决策单调。
    同时我们维护二元组,去维护f[i][j]是由谁更新来的
    那么我们因为每个i难以维护,我们可以只维护实际的j
    在更新maxn时,也需要二元组,每次都是用make_pair(i-1,j)更新,
    我们画图发现转移中,i的大小与最后查询无关,我们只要用j就好了...
     
     
     
     
     
     
     

  • 相关阅读:
    学习进度条(六)
    结对开发——-四则运算四
    结对开发——最大联通子数组的和
    团队项目成员和题目
    下载与安装APache Cordova
    学习进度条(五)
    构建之法阅读笔记05
    敏捷开发方法综述
    学习进度条(四)
    psp项目计划
  • 原文地址:https://www.cnblogs.com/Wwb123/p/11627170.html
Copyright © 2011-2022 走看看