• 20190927


    我再不开$C++11$编译我就从三楼跳下去$$ ext{%%%lsc}$$

    Day3

     -lm -O2 -std=c++11 

    Before

    $Day3$?

    全是$Subtask$?

    $frac{1}{4}$?

    T1

    矩阵?

    好了我有一分了不会爆零了 =。=

    T2

    3 秒

    怕不是要命……

    怕是不要命……

    数据结构预约……

    T3

    仿佛是原题, $kuku$ 了(不会$QnQ$)

    不对啊,要求变多了……

    $lsc$要笑死了??(脸都紫了)。

    During

    T1

    如果无重叠的就直接搞答案就好了……

    事实上,

    仿佛亦或和的意义就是

    最后统计出现次数为奇数的数的异或和……

    Input

    10 4
    1 1 10 1
    5 5 4 4
    1 9 4 3
    3 3 5 2
    

     Output

    0
    

    sth.

    1 0 0 0 0 0 0 0 3 0
    1 1 0 0 0 0 0 0 3 3
    1 1 3 0 0 0 0 0 3 3
    1 1 3 3 0 0 0 0 3 3
    1 1 3 3 7 0 0 0 0 0
    1 1 3 3 7 7 0 0 0 0
    1 1 3 3 7 7 7 0 0 0
    1 1 1 1 5 5 5 5 0 0
    1 1 1 1 1 1 1 1 1 0
    1 1 1 1 1 1 1 1 1 1
    

    突然想到差分……$emm$

    需要 $3$ 种不同的差分?

    还可以改成 $2$ 种?

    都试试……

    如果成了,复杂度:

    $Theta(Q+N^2)$

    完了,出锅了……

    有一个前缀和一直交错……

    这个题的难点在那个**的三角形二维差分

    会有一堆堆的重复……

    解决了一个……

    分方向更新?

    好了,都处理好了$QwQ$

     cerr 输出要 3s 哭笑不得

    测了半天时间,发现好慢,

    后来发现测的是暴力的时间……

    拍半天发现没开时间种子……

    T2

    向WWB致敬!(雾

    跑到 $2^30$ 只需要$2.143s$

    枚举随机数?

    阶乘复杂度$banrbi$炸

    如果跑$DP+Qj=Subtask 1,2,3,4$

    先拿两分……

    $emm$

    设$f_s$为选择为s时的贡献。

    $count(s)=k$时更新答案……

    必须按$count$的顺序更新……

    完了又写跪了。

    T3

    这儿又有 1 分……

    所以总共有 4 分?

    这题还是树上dp么……

    贪心?

    二分?

    Result&After

    T1

    就是二维差分,分两个方向维护。

    T2

    是记忆化搜索……

    T3

    毒瘤级Dp,主要点在从儿子到当前的转移和二元组Dp。

    15
    Miemeng 100
    03:12:59
    2
    03:14:00
    1
    03:14:02
    103
    03:14:02

    Day4

    获得两个好字:叒叕

    Before

    T1

    仿佛是很呵呵的DP题

    T2

    矩阵……

    T3

    和阿塞拜疆有关系?

    先模拟吧,看着很毒瘤?

    During

    T1

    两侧乘积互质,那么两侧的因子一定是不同的

    于是把每一个数因数分解并且特判 $1$

    这样在 $10^6$ 下 最多有的不同的因子数就是 $7$ 个……

    $$
    egin{array}{rcl}
    2 imes 3 imes 5 imes 7 imes 11 imes 13 imes 17    &=& 510510  \
    2 imes 3 imes 5 imes 7 imes 11 imes 13 imes 17 imes 19 & = & 9699690
    end{array}
    $$

    按因子直接枚举子集……

    $3^7$ ?

    这……

    手摸一番……

    好像行?

    主要是用每一个数去做限制条件

    还有剩下的因子(仿佛并没有什么意义……)

    先分解质因数并把大于$sqrt{a_i}$的排在外面……

    有个比较可行的小暴力:

    先把所有分解的因子压到一个桶里。

    每次枚举因子的子集……,然后去取所有的数……

    $O(2^PN)$(只能更优)$P$:不同的因子数……

    先上个无脑暴力……

    大概又有了一个思路,

    把所有的数先都乘到一起求一个总共的质因子

    然后用容斥,计算每种因子的出现

    最后把不可能的情况减去……

    复杂度仿佛是 $N^2$ 的?

    码力不够啊$QAQ$

    各种YY:

        首先可以知道,两个相同的数一定在同一个集合里(除1)

        那么大于$sqrt{a_i}$的质因子就是独特的(一个数就一个)……

        剩下的质因子也就 $168$ 个。

        剩下的数就可以用 少于 $168+N$ 的复杂度判出交集……

        如果和剩下的没有重复,就可以直接柿子算数。

        只要判判交就好。

        判交也可以直接维护gcd。

        质因数分解处理压vector,$Theta(N*logM)$并且对每个 vector 维护$gcd$。

        出点锅……

    T2

    想想怎么乱搞……

    记忆化?

    现在觉得回到每个点的路径可以直接循环处理。

    每个点能够有贡献的仿佛只有两个点,所以最后其实是一棵二叉树……

    可以把树建的怪一点保证复杂度。

    因为d为20,所以建20层就够。

    那么现在怎么建啊$QAQ$

    如果暴力建……$2^N$?

    我们现在只需要知道有没有那个节点就好了……

    其实是一个化边为点??

    仿一下ST表……

    还是复杂度恐怖。

    T3

    又有 1 分$QvQ$

    感觉很怪……

    有没有卡常大师 $N^2$ 过 $100000$

    完了,我没思路了……

    因为要模拟这个过程,所以猜测作者卡暴力卡的很严……

    下一步就是要拿到单增的$Subtask$

    感觉可以创反思长度记录……800 字反思了解一下……

    跪了……

     After

    47
    Miemeng 0
    03:14:37
    21
    03:14:38
    31
    03:14:38
    52
    03:14:38

    看到T1的神奇颜色了嘛……CE……

    总结:

    Day3还行,想的还可以

    Day4跪了。

    粘个东西来这里:

    /sandbox/1/a.cpp:11:9: error: 'long long int div [2]' redeclared as different kind of symbol
     LL div[2];
             ^
    In file included from /usr/include/c++/5/cstdlib:72:0,
                     from /usr/include/c++/5/ext/string_conversions.h:41,
                     from /usr/include/c++/5/bits/basic_string.h:5249,
                     from /usr/include/c++/5/string:52,
                     from /usr/include/c++/5/bits/locale_classes.h:40,
                     from /usr/include/c++/5/bits/ios_base.h:41,
                     from /usr/include/c++/5/ios:42,
                     from /usr/include/c++/5/ostream:38,
                     from /usr/include/c++/5/iostream:39,
                     from /sandbox/1/a.cpp:1:
    /usr/include/stdlib.h:788:14: note: previous declaration 'div_t div(int, int)'
     extern div_t div (int __numer, int __denom)
                  ^
    

    div跪了……emm

    请开$C++11$编译$ ext{T_T}$

    说一下:一定要按照用的顺序定义变量啊……

    $$Huge ext{ %%%$frac{1}{4}$}$$

  • 相关阅读:
    OpenCVPython系列之相机校准
    matplotlib的使用——坐标轴设置部分
    nvcc fatal : Unsupported gpu architecture ‘compute_30‘
    ubuntu中aptget install 改用阿里云作为数据源
    OpenCVPython系列之稠密光流
    OpenCVPython系列之Camshift算法
    安装cudnn
    OpenCVPython系列之相机校准实践
    matplotlib的使用——legend图例的设置
    matplotlib的使用——picture in picture画中画的使用
  • 原文地址:https://www.cnblogs.com/kalginamiemeng/p/Exam20190927-28.html
Copyright © 2020-2023  润新知