zoukankan      html  css  js  c++  java
  • 2017 UESTC Training for Data Structures

    http://acm.uestc.edu.cn/#/contest/show/155

    对大二来说貌似这套题有点简单了,多是一眼题

    发现漏了一题,然而是以前看别人讨论过的:)。

    H:线段树+暴力。大概就是如果公差大一点的话,直接暴力扫一次,小的公差就用多个线段树维护起来。

    另外线段树还有一道好题,uoj228.

    A:线段树水题,最大最小值

    B:求连续1的时候考虑分治算法,线段树,记录区间前缀最长0/1和后缀最长0/1和整体最长0/1和一个lazy。

    C:线段树经典操作。。注意作乘法的时候,要把addtag也更新,pushdown的时候儿子的addtag要先乘上父亲的mul[0]再加父亲的add,sum处理的时候也类似。

    D:先按一维排序,然后下面用树状数组或者线段树维护一下

    E:贪心+树状数组

    F:01字典树

    G:和B有点像吧,也考虑分治算法,线段树记录前缀最大和,后缀最大和


    I:贪心+set+并查集吧,对于每个节点都能有两个儿子,每次用set二分找一个恰好小于等于这个值的,然后接在它的后面,如果被接了两次就从set中删掉,并查集维护一下哪几个点在一起。

    J:哈夫曼树,用优先队列一直维护就好了

    K:顺着来比较难搞,那我们倒着来,并用个前缀和再加并查集什么的维护一下

    L:带权并查集

    M:二分最小值,贪心用set来维护

    N:染色题,并查集和dfs都能搞掉吧

    O:分别维护两种操作,第一种dfs序维护,第二种当然是树链剖分。

    P:线段树扫描线维护面积并

    Q:就是0/1异或啊,二维树状数组搞一下

  • 相关阅读:
    8、什么是单元测试及单元测试框架
    7、Appium常用API
    6、通过Appium Desktop 实现录制功能
    5、通过Appium Desktop实现页面元素定位
    4、通过uiautomatorviewer实现appium元素定位
    Vue设置element的dialog
    vue实现跳转路由
    jquery学习:选择器&dom操作
    JQuery学习:事件绑定&入口函数&样式控制
    JQuery学习:jquery对象和js对象区别和转换
  • 原文地址:https://www.cnblogs.com/scau-zk/p/6863283.html
Copyright © 2011-2022 走看看