zoukankan      html  css  js  c++  java
  • December Challenge 2020 Division 1

    完成情况:
    Even Pair Sum(12.5)
    Positive Prefixes(12.5)
    Hail XOR(12.5)
    Calculus
    String Operations(12.6)
    Square Root of LCA Convolution(12.8)
    Permutations
    Linear Combination
    Digit Matrix
    Palindromic Equivalence

    技不如人...爬了爬了

    这场其实质量挺高的,由于Calculus心态崩了后面完全没打出水平

    不知道出题人是有多**出个积分的题...

    这个题的数据也出的**,一天内有原来四百多的AC到六百多...

    由于没打好,就只讲讲不会做的题了

    Linear Combination

    首先不看互不相同的条件
    选出任意一个(a_k eq 0)(一般的,我们令(k=n)
    对于(sumlimits_{i=1}^n a_ix_iequiv 0(mod~p))的解,相当于(sumlimits_{i eq n-1}a_ix_iequiv -a_nx_n(mod~p))
    对于任意一组({x_1,x_2,cdots ,a_{n-1}}(x_i eq x_j)),都有且仅有一个(x_n)与之对应
    但现在(x_n)可能与(x_i(i eq n))相等,我们考虑将两合并
    (a_1x_1+a_2x_2+cdots+a_{i-1}x_{i-1}+a_{i+1}x_{i+1}cdots a_{n-1}x_{n-1}+(a_i+a_n)x_nequiv 0(mod~p))
    受这个启发:

    (f_S):钦定({i|i otin S})集合缩成一个变量,系数为(sumlimits_{i otin S}a_i),同(S)中的变量的解个数
    (T={i|i otin S})

    • (T)的系数不为(0)
      (S)中的变量任意选择,(T)都有且仅有一个(x)与之对应,但需减去(S)中存在变量与(T)变量相同的情况
      (f_S=p^{underline{|S|}}-sumlimits_{xin S}f_{Sackslash x})
    • (T)的系数为(0)
      (T)的变量如何选择并影响不了和,这个变量有(p-|S|)种选择;对于剩下(S)中的抉择,为(f_{Sackslash x}(forall xin S))
      (f_S=(p-|S|)f_{Sackslash x}(forall xin S))

    复杂度(O(n2^n))

    Palindromic Equivalence

    考虑建图:若(s_{l,r})为回文串,将(l,r)两点合并;若(s_{l,r})为回文串且(s_{l-1,r+1})不为回文串,那么(l-1)(r+)连边

    然后就相当于每个点有权值,一个独立集的权值为点权之积
    求独立集权值之和
    具体来说,点(u)若其代表了(x)个位置,其权值为(f_u=2^x-1)

    结论:该图为弦图

    证明:
    我们来证明若对于(i<j<k),满足(i)(k)有连边,(i)(j)有连边,则要么(j,k)也有连边,要么(j,k)是处于同一合并点
    (i,k)有连边,(i,j)有连边
    (s_{i+1,k-1},s_{i+1,j-1})是回文串
    (s_{k-j+i+1,k-1})也为回文串;(j,k-j+i)处于同一合并点((s_j=s_{k-j+i})
    (s_{k-j+i}=s_k),那么(j,k)处于同一合并点
    (s_{k-j+i} eq k),那么(k-j+i,k)有连边,则(j,k)有连边
    故很容易证明该图为弦图

    我们考虑建出团树,每个团点显然最多选择一个点
    (C_u)表示团点(u)的点集,令(T_v)表示团点(v)在团树中的儿子节点
    (none_u)为团点(u)内不选择任何点,令(chosen_{u,x})为团点(u)内选择点(x)
    转移:

    [none_u=prodlimits_{vin T_u}(none_v+sumlimits_{xin C_v-C_u}chosen_{v,x}) ]

    [chosen_{u,x}=f_xcdot prodlimits_{vin T_u,xin C_v}frac{chosen_{v,x}}{f_x}prodlimits_{vin T_u,x otin C_v}(none_v+sumlimits_{yin C_v-C_u}chosen_{v,y}) ]

    复杂度(O(n^2))

  • 相关阅读:
    hdu
    《Linux命令行与shell脚本编程大全》 第十四章 学习笔记
    zoj 3665 Yukari's Birthday(枚举+二分)
    ActiveMQ使用STOMP协议的一个错误问题:Unexpected ACK received for message-id
    Ubuntu下屏幕录像、后期处理不完全攻略
    find-all-numbers-disappeared-in-an-array
    find-right-interval
    non-overlapping-intervals
    cut命令如何截取以空格隔开的字段
    arranging-coins
  • 原文地址:https://www.cnblogs.com/Grice/p/14095542.html
Copyright © 2011-2022 走看看