• 「CCNU21暑期第六次周赛」


    居然是最后一次,然后还因为练车给鸽子了

    A

    一个(dp),每个糖的甜度区间是一定的,这个区间内的数字模(3)的余数固定

    B

    要算每两个点之间的最短路,根据克鲁斯卡尔思想把边权从小到大加入图中,设一条边连接的两个连通块中点的个数分别为(n,m),那么每加入一条的贡献就是这条边的边权乘以(dbinom{n+m}{2}-dbinom{n}{2}-dbinom{m}{2})

    C

    前两个条件白给,第三个条件本来以为是莫反板子(事实上也是莫反板子)实际上:

    [sum_{i=1}^{frac{x}{m}}sum_{j=i}^{frac{x}{m}}[gcd(i,j)==1] ]

    所以只要求(1)(frac{x}{m})的欧拉函数就行了,可以线性筛预处理

    D

    好耶,(dp),不会

    很妙,设(f[i])是第(i)位是(0)的方案数,所以(f[n]=sum_{i=n-k}^{n-1}f[i]),用前缀和优化就行

    最后答案是(sum_{i=n-k+1}^{n}f[i])

    E

    一开始还以为是类似树的直径那样在每个连通块中以一个点为起点找最远点做两边然后在罚时后想出了反例

    答案是从每个点出发找最远点反正时间够/px

    F

    (3086=2*1453),容斥计数就行了

    G

    不愧是学姐呐,完全不会做!

    无解条件很好判,就是存在(x>p)

    考虑构造一组解,从左到右按照(1,2,3,……)的方式摆放,如果遇到了被安排的位置,将被安排的数字放在这里,并将前面所有大于等于它的数字(+1)

    例如:有⼀个限制5 4,那前四个我们会放⼊1 2 3 4,第五个也要放⼊4,那前四个中⼤于等于4的数字就要加1,
    变成1 2 3 5 4。(学姐原话)

    暴力实现要(n^2),可以从右往左考虑,每次遇到一个限制就找到左边还剩下(x)个空的数字填入,我是用线段树二分实现的

    H

    字典树

    I

    很好发现可以按横纵坐标之和奇偶性分类

    J

    可以按位处理,但题解很神

    (Xigoplus Y)是不进位加法,(X+Y)是进位加法,那么(A-B)就是(X)(Y)加法进位的情况

    所以(X)(Y)一定含有((A-B)/2)

    如果((x-y))是奇数那就无解了

    所以(X=(A-B)/2,Y=A-(A-B)/2)

    K

    (1)跑一个最短路,从(n)建反向边跑一个最短路,然后(st)

    L

    模拟题,还是要讲一点方法啊

    (p_1,p_2,p_3,p_4)是父/母本取(A/a)的概率

    (F_1)得到(AA)概率是(p_1*p_3),(aa)概率是(p_2*p_4),(Aa)概率是(1-p_1*p_3-p_2*p_4)

    M

    先弗洛伊德

    然后设(f[0/1][x][y][z])(dp)方程

    很明显,会(T)

    我们知道有一支队伍一定在当前劫粮地点,所以设(f[0/1][x][y])是另外两支队伍的地点

  • 相关阅读:
    【LeetCode-动态规划】编辑距离
    【LeetCode-栈】计算器
    【LeetCode-栈】字符串解码
    【LeetCode-数组】缺失的第一个正数
    【LeetCode-查找】寻找重复数
    【LeetCode-堆】丑数
    【LeetCode-堆】数据流中的第K大元素
    【LeetCode-排序】根据身高重建队列
    立项与启动
    JS中match方法探究
  • 原文地址:https://www.cnblogs.com/knife-rose/p/15157132.html
Copyright © 2020-2023  润新知