zoukankan      html  css  js  c++  java
  • csp-s模拟测试53

    最近问题挺大的,别人都能A掉的题,我要么细节被卡,要么想不到正解,稍难受

    T1:

     一眼看上去像前缀和,然后日常想亦或怎么拆(当然是拆不了了,不满足结合律什么的),然后想到了差分,不过是O(n*q)的每行差分

    正解是差分来维护差分,

     在(r,c)处+1,(r+l,c+l)-1

    那么在最后时,jz[i][j]+=jz[i-1][j-1]就是每一行差分数组的值,再每行从右往左前缀和即可

    但这还不够,只有这个操作会给一个梯形全部+1

    所以再独立开一个正方形差分数组来消除这种影响

    注意MAXN开2010,消除三角形越界的影响

    T2:

    30能想到状压了,考试格外纠结最优策略指的是啥(因为样例模不过去)

    其实策略是每一步从右/左选,而且有后效性,考虑可以记忆化搜索,因为有后效性,所以无论抽到的位置或相反位置有没有白球都要搜一遍取最大值

    不太会题解证的状态上限为sigma(fib(n)),复杂度肯定是远小于O(2^n*n)

    UPD:证明

    st小时存数组,st大时hashmap

    T3:

    考场上把所有性质都推到了,结果打的贪心???正解神仙dp

    80pts 骗分+randomsuffle保证贪心的局部正确性

    转载大佬题解

    <二元组dp第一次见>

  • 相关阅读:
    个人作业——软件评测
    结对第二次作业
    寒假作业(2/2)
    寒假作业(1/2)
    markdown整理
    我们一定会在人生的更高处相见的
    时间复杂度 分析 可能算法
    有关数学 结论 规律 题目 小结
    jzyz 题库 选做 及 知识小结
    隔板法
  • 原文地址:https://www.cnblogs.com/2018hzoicyf/p/11603369.html
Copyright © 2011-2022 走看看