• 2019暑假杭二day1测试总结



    2019年8月1日,进入杭二集训,目前集训模式是上午队测,下午讲评与订正,再加上李建老师讲课,晚上是自主学习。想把每天的测试作个记录。下面是day1的测试日志。

    T1

    题目大意

    设函数(f(n))为n的次大因子,求(sum_{i=l}^lf(i),1<=l<=r<=10^{18})

    sol

    T1我得了80分,第一档分直接用线筛筛每个数的最小质因子,就可以算出每个数的最大约数。第二档分可以预处理sqrt(r)内的所有质数,然后用它们去埃筛[l,r]内的每一个数,复杂度(Theta(nloglng(n)))
    第三档分我不会了,结果是用分块打表来做,把每(1e7)个数的函数值之和用第二档分的办法处理出来,直接打在表上,每次询问时大段查表,小段用第二档分的办法做。还有一种做法是用我不会的 min_25筛

    T2

    题目大意

    给定一棵(n)个点,(m)条边的树,边有边权,选出一个点集(S),满足(u,vin S,dis(u,v)>=L),求(max|S|,n<=5*10^5,L<=10^9)

    sol

    T2在测的时候我没有想到思路,爆0了。后来才知道是一个贪心题,我们把每个子树的答案和具体方案求出来,根的答案就是最终的答案。转移为将每个节点的点集和它自己合并到它的点集里,把每个点按到根的距离排序,每次取出离根最近的两个节点,比较它们的距离,如果小于(L)就把离根最近的删去。用左偏树维护即可。

    T3

    题目大意

    给定一个数列(a_1,a_2,...a_n),求有多少(b)个数列(b_1,b_2,...,b_{2n}),满足

    [b_{i+n}|a_i,b_i|b_{i+n},1<=i<=n\ prod_{i=1}^nb_i^2>=prod_{i=n}^{n}b_{i+n}\ ]

    sol

    还不会~,等会了再来补吧

  • 相关阅读:
    关于websocket
    Convert word or html to wiki syntax
    How to center an image?
    Multiline strings in JavaScript
    JavaScript tips and tricks 4
    Use IE userdata behavior as a clientside data storage
    Confused with JavaScript prototype
    Javascript中的作用域(scope)
    JavaScript tips and tricks 2
    AOP in JavaScript
  • 原文地址:https://www.cnblogs.com/hht2005/p/11402671.html
Copyright © 2020-2023  润新知