zoukankan      html  css  js  c++  java
  • WC2017 Day5

    WC2017 Day5

    T1

    - 本题内存1G,时限3s
    - 在任意图上玩n数码问题
    - 10分点数少,10分树,10分环,10分基环树,10分网格图,15分仙人掌,剩下30分任意图
    - 直接BFS可过40分,然而我写了特判喜获10分,树环基环树全挂了
    - 网格图:判断置换是否为偶置换
    - 考虑这个图的一个生成树
    - 走过图中的一条非树边实质上是对一些棋子的轮换
    - 仙人掌:每个环对答案贡献独立,分别判断是否循环同构即可
    - 每个点双联通分量独立
    - 对于一个点双联通分量,如果是一个环,那么只有换上的置换合法,如果是二分图,只有偶置换合法
    - 错误的猜想:其他的点双可以生成所有置换,不正确但反例不多,可得75分
    - 100分:Schreier-Sims算法
    - $ n^5+qn^2 $
    - 有玄学O(n)做法
    - 刚才错误的猜想对于大的点双几乎都是对的
    - 对小的点双特殊处理

    T2

    - 本题内存2G,时限3s

    Subtask 1

    给2e8个整数排序

    - 直接sort得5分(1e6)
    - 按16位基数排序19分(1e8)
    - 按8位基数排序11分(2e8)

    Subtask 2

    给两个0,1,2组成的串,每次给出x,y,l,求第一个串从x位置开始,第二个串从y位置开始,长为l的子串有多少位(a[x+i]+1)%3==b[y+i]

    - 分块FFT,不可过
    - 全裸n^2暴力,7分
    - 压位+查表求1个数可过,23分

    Subtask 3

    求长为n(n<=266666)的合法括号序列数量,一些位置是给定的

    - 全裸dp,9分
    - dp稍微优化一下常数,少做几次加法
    - dp循环展开,可过

    T3

    - 本题为提交答案题

    要求你设计一系列比较器,要求同一时间内没有一个数同时被两个比较器使用

    比较器通过交换两个数,使两个数变得有序

    要求这些比较器能把k个n排列排成有序

    要求总时间不大于m,保证数据有解

    1

    - m=1
    - 每个循环长度都为2
    - 每个元素只属于一个循环
    - 所以直接暴力交换即可

    2

    - nm都很小
    - 枚举排序网络,剪枝+估价
    - 最后一层的时候O(n)判断一下
    - 最后两个点,奇偶归并

    3

    - k=1,m=O(loglogn)
    - 只有一个串,可以针对性设计
    - 分治排序
    - 数据随机
    - 贪心

    4

    - k=1,m=2,每个循环长度不同
    - 最后一层肯定是个对换
    - 在第一层找每个循环的对称轴
    - 绕着对称轴转

    5

    - $ m=O(log^{2}n) $
    - 直接构造排序网络
    - 奇偶归并双调排序,M=105
    - 可以优化成M=104

    6

    - 一个数和它应该在的位置偏移L不大
    - 在长为2L块里奇偶排序,M=56
    - 可以优化到M=54

    7

    - 排序可以由若干个互不相交的区间循环右移一位完成
    - 所有的循环右移都是前缀时可以直接分治完成
    - 对分治树进行调整可以使得$ M = 2logk $

    8

    - 所有的循环都由i和n交换得到
    - 对[1,n-1]建立分治结构
    - 乱搞一通可以做到$ 4logk $
    - 多叉树+倍增可以做到$ 2lceillogk ceil+1$

    总结

    - 老老实实写暴力多好

    许愿弥生改二
  • 相关阅读:
    BZOJ1588 营业额统计 (Splay)
    HNOI2004 郁闷的出纳员(Splay)
    (寒假集训) Piggyback(最短路)
    (寒假集训) 卡片(离散化)
    (寒假集训) Cow Jog(二分优化的最长上升子数列)
    Docker安装
    Spring-Batch将CSV文件转为XML文件
    SSH管理多密钥
    CentOS7防火墙firewalld的配置
    CentOS下安装与配置Maven
  • 原文地址:https://www.cnblogs.com/LoveYayoi/p/6745438.html
Copyright © 2011-2022 走看看