• AGC046(F未做)


    B

    有个跟官方题解不同的,稍微讲一下
    对于一个生成的矩阵(R imes C),由少一行或少一列的矩阵转移过来是有重复的
    (f_{i,j})为有多少个(i imes j)的矩阵:

    [f_{i,j}=f_{i-1,j} imes j+f_{i,j-1} imes i-f_{i-1,j-1} imes(i-1)(j-1) ]

    C

    看清楚题意

    D

    首先来思考给定(T),询问(S)是否可以生成
    (S')(S)的最长后缀使得其为(T)的子序列,显然这部分是可以不动的,那么我们仅需判断(S_{1...|S|-|S'|})能否进行操作获得(T_{1...|T|-|S'|})(0/1)数量

    考虑若已知(S_{1...i})进行操作能获得(0/1)数量分别为(j,k),那么要做的就是(S_{i+1...|S|})中通过插入(0/1)的数量为(j,k)能生成多少个字符串
    为了不重复计数,要使得(S_{i,i+1})间插入的数与(S_i)不同,(S_{i+1,i+2})间插入的数与(S_{i+1})不同...(S_{|S|})后插入的数与(S_{|S|})不同

    E

    (x,y)分别为(A_i)最小与最大的
    结论1:若(2A_x<A_y),则无解

    证明:
    考虑最后的序列单独提出(x,y),发现会出现首尾连续出现两次,或中间连续出现三次的情况,不合法

    推论1:若(2A_xle A_y),则有解

    证明:
    通过结论1的证明,不难发现通过大的数连续出现两次,以使得合法

    考虑贪心的填数,这里不同于有些贪心的题是一个一个填数。
    为方便考虑,在保证已填好的序列中最后(k)个是个置换的情况下,然后枚举新填的序列长度(len)
    然后判断填好后是否可行,这里不同于空序列判解:

    (mi=A_x,mx=A_y)
    (2A_x+1=A_y),需要满足前面一个排列(A_i=mx)的全部排在(A_i=mi)的前面

  • 相关阅读:
    使用navicat连接mysql报10038错时解决方法
    项目部署之前后端软件部署
    F12调试模式下使用console自动提交
    selenium+python安装配置
    常用dos命令
    jmeter的使用---web测试
    jmeter的安装
    使用JMeter创建数据库(Mysql)测试
    oracle定制定时执行任务
    AWS之Rekognition检测image-text
  • 原文地址:https://www.cnblogs.com/Grice/p/13192934.html
Copyright © 2020-2023  润新知