zoukankan      html  css  js  c++  java
  • 牛客2020多校1

    坑……

    A B-Suffix Array

    题目:定义一个字符串的B-后缀数组$b_i = min_{1 leq j < i, t_j = t_i}{i - j}$,输入长为n的字符串,只包含字母a和b,将这个字符串的每一个后缀的B-后缀数组按照字典序排序

    做的时候不会后缀数组……这就有点悲剧了

    先写出整个字符串的B-后缀数组,发现字符串后缀的B-后缀数组就是:整个字符串的B-后缀数组的后缀,将第一次出现的a和第一次出现的b的位置改为0

    B-后缀数组的形式一定是 0 X 0 Y,其中X和Y表示一个子数组

    第一种方法是想办法比较X,这时只能使用height数组计算最长公共前缀,然后比较下一个字符(分为两种情况:0或者其他),最后比较Y

    再仔细观察,两个0中间一定全部是1

    B-后缀数组的形式一定是 0 11111 0 ?????

    第二种方法是计算出中间的1的长度,然后比较整个字符串的B-后缀数组对应Y的部分

    还有一个结论,只包含两个字母的字符串可以直接比较$c_i = min_{n-1 geq j > i, t_j = t_i}{i - j}$的后缀,但是我看不懂……

    F Infinite String Comparision

    题目:给两个无限循环的字符串的循环节,比较两个字符串大小,长度都是1e5以内

    直接lcm拼接会发现不行,有个结论,只需要比较L1+L2-gcd(L1,L2)个字符,不会证明

    I 1 or 2

    带花树,一般图匹配

    加强版:http://acm.hdu.edu.cn/showproblem.php?pid=3551

    待补……

    J Easy Integration

    题目:输入$n$,计算$int^1_0 x^n (1-x)^n mathrm{d} x$,答案对998244353取模

    特别神奇的积分方法……群里的@吉龙在天 的方法,注意到x=1和x=0时被积函数为0

    $int^1_0 x^n(1-x)^nmathrm{d}x$

    $=frac{1}{n+1}int^1_0(1-x)^nmathrm{d}x^{n+1}$

    $=frac{1}{n+1}left[x^{n+1}(1-x)^n-int x^{n+1}mathrm{d}(1-x)^n ight]^1_0$

    $=frac{n}{n+1}int^1_0 x^{n+1}(1-x)^{n-1}mathrm{d}x$

    $=cdots$

    $=frac{n imescdots imes 1}{(n+1)cdots(2n)}int^1_0 x^{2n}mathrm{d}x$

    $=left.frac{n! n!}{(2n+1)!}cdot x^{2n+1} ight|^1_0$

    $=frac{n! n!}{(2n+1)!}$

    也可以换元,用$sin^2 t$去换$x$,然后得到一个三角函数的很多次的积分,= =到这一步就卡住了,尝试了用$arcsin m$换$t$,发现有根号就放弃了

  • 相关阅读:
    洛谷P1043数字游戏
    luogu P1330 封锁阳光大学
    luoguP1242 新汉诺塔
    luogu P1892 [BOI2003]团伙
    luogu P3375 【模板】KMP字符串匹配
    luoguP1440 求m区间内的最小值
    luoguP2700 逐个击破
    luoguP2814 家谱
    luogu P1962 斐波那契数列
    P3379 【模板】最近公共祖先(LCA)
  • 原文地址:https://www.cnblogs.com/sahdsg/p/13290666.html
Copyright © 2011-2022 走看看