zoukankan      html  css  js  c++  java
  • 4.26总结

    t1:

    看了题,思考了几分钟,发现50分很简单,70分m<=20,好像可以容斥,想想感觉还行,再看最后的数据范围,被限制的数只有300*300!!!直接dp,后面的没有限制,有可能是组合数,转换了一下模型,发现可以做,时间空间也还行,一看表还没8点,在直接开始写和继续看题中选择了直接开始写,9点多一点写完暴力+正解,放一边对拍去了

    t2:

    想了一会,想到了分块,莫队上,发现分块不行,感觉找个东西用回滚套一下就行,最后感觉lct应该可以(后来发现不可以),代码一定很难写,于是看第三题

    t3:

    看完之后毫无思路,连暴力都模糊不清,想暴力应该就有半个小时,想完就直接写了,继续想60分,发现只要优化一点就可以了,10点20,60分写完+对拍

    拐回来看t2发现思路错了,只能拿30分的暴力,60分也没什么思路,40的时候,发现t3的60对拍错了,心态有点慌,赶紧打完t2的30,就去看t3的60

    但是直到考试结束也没调出来

    题解:

    t1: 100

    dp(前缀和优化)+组合数

    t2:

    60分:

    从大到小依次加入每条边

    [ l , r ] 就是 加入了所有 [ l , m ]的边后,编号不超过 r 的树边的权值之和

    对于 树 结构的维护可以暴力,对于权值和的询问可以用树状数组维护

    时间复杂度 O(m*n+(m+q)*logm) 

    100分:线段树合并区间 时间复杂度 O((m+qlogm)*n*logn) // logn算个常数

    线段树合并区间:https://www.luogu.com.cn/problem/P2572

    https://www.luogu.com.cn/problem/P4198

    https://www.luogu.com.cn/problem/P5618

    https://www.luogu.com.cn/problem/P3569

    t3:

    30暴力

    60 二维前缀和+二维差分

    check #用二维前缀和

    add 二维差分

    注意加上偏移量,防止负数越界

  • 相关阅读:
    docker 实践七:docker-machine
    docker 实践六:dockerfile 详解
    docker 实践五:端口映射和容器互联
    docker 实践四:数据管理
    利用onerror将页面异常图片替换成随即图
    checkbox绑定v-for的数据
    iphone在jsp显示时间会NAN解决办法
    html5文本超过指定行数隐藏显示省略号
    使用vue做移动端瀑布流分页
    java导入Excel表格数据
  • 原文地址:https://www.cnblogs.com/xsm098/p/14704702.html
Copyright © 2011-2022 走看看