首页 > 其他分享 >【杂题乱写】ARC104~106

【杂题乱写】ARC104~106

时间:2023-03-17 21:55:24浏览次数:52  
标签:cnt 乱写 sum ARC104 合法 端点 区间 106

ARC104

A Plus Minus

普及题,解方程。

B DNA Sequence

枚举区间前缀和判断合法即可。

C Fair Elevator

先排除出现重复或 \(L\ge R\) 的明显不合法情况。

观察发现一个合法的最终情况应当形如:\((1,4),(2,5),(3,6),(7,9),(8,10)\),也就是分成多个长度为偶数的区间,且每个区间内有对应数对 \((i,i+L)\),即左端点均在左侧右端点均在右侧,而每个数对值相等,为区间长度一半。

两个不同区间独立,可以用 DP 去判断合法的划分,假设 \(dp_j=1\),现在判断 \([j+1,i]\) 能否被划分。

实际上就是看填成上面的结果是否合法,具体判断:

  • 左侧区间位置全部没有出现或作为左端点出现,右侧区间位置全部没有出现或作为右端点出现。

  • 左侧区间作为左端点出现的位置 \(k\),当且仅当 \((k,k+L)\) 是一确定信息或 \(k+L\) 没有出现。

  • 右侧区间作为右端点出现的位置 \(k\),当且仅当 \((k-L,k)\) 是一确定信息或 \(k-L\) 没有出现。

时间复杂度 \(O(n^3)\)。

D Multiset Mean

平均数为 \(x\) 可以写作 \(\sum_{i=1}^cnt s_i=cnt\times x\),发现其中有 \(n\) 和 \(\sum\) 两个需要维护的。\(x\) 自然是随便选,所以只考虑不为 \(x\) 的选取方案,移项就是:\(\sum_{i=1}^cnt s_i-x=0\),按正负划分可以得到:\(\sum_{s_i<x} x-s_i=\sum_{s_i>x} s_i-x\),本质就是左侧值域为 \([1,x-1]\),右侧值域为 \([1,n-x]\),选取个数任意要求和相等。

转化成一个看起来简单一点的问题:求 \(f_{i,j}\) 表示值域 \([1,i]\),可选取 \([0,k]\) 个且和为 \(j\) 的方案数,容易写出转移方程:

\[f_{i,j}=\sum_{l=0}^{\min(k,\left\lfloor j/i\right\rfloor)} f_{i-1,j-l\times i} \]

貌似是和模 \(i\) 的值有关的,类似于维护一个队列,每次加入当前的 \(f_{i-1}\) 值,如果队列元素超过 \(k+1\) 个就弹出队首,答案就是当前队列的元素和。

时间复杂度 \(O(n^4)\)。

多重集 \([0,k]\) 的选取可以写成生成函数的形式 \(\prod F_k(x)\),其中 \(F_k(x)=\sum_{i\ge 0} x^{ki}\),但好像并不会简化问题。

标签:cnt,乱写,sum,ARC104,合法,端点,区间,106
From: https://www.cnblogs.com/SoyTony/p/Problems_in_ARC_104_to_106.html

相关文章

  • 106Go基础2
    基础知识1、变量声明和赋值在Go语言中,可以使用var关键字声明变量,也可以使用:=运算符进行简短声明。以下是变量声明和赋值的示例代码:varxintx=1y:=2......
  • ASEMI代理MIMXRT1064CVJ5B原装现货NXP车规级MIMXRT1064CVJ5B
    编辑:llASEMI代理MIMXRT1064CVJ5B原装现货NXP车规级MIMXRT1064CVJ5B型号:MIMXRT1064CVJ5B品牌:NXP/恩智浦封装:LFGBA-196批号:2023+安装类型:表面贴装型引脚数量:196类型......
  • 「解题报告」CF1067E Random Forest Rank
    感觉非常强大。求秩不好考虑,容易想到求行列式。如果行列式不等于\(0\)说明满秩。先考虑树邻接矩阵的行列式:行列式的定义式即枚举一个排列。排列可以划分成若干个置换环......
  • CF1067E Random Forest Rank
    非常神秘题。考虑\(\operatorname{rank}A=n\)当且仅当\(\detA\neq0\),我们把\(\detA\)写下来:\[\sum_{p}(-1)^{\pi(p)}\prod_{i=1}^nA_{i,p_i}\]考虑这是......
  • 106. Construct Binary Tree from Inorder and Postorder Traversal
    题目Giveninorderandpostordertraversalofatree,constructthebinarytree.Note:Youmayassumethatduplicatesdonotexistinthetree.思路本题......
  • P7213 [JOISC2020] 最古の遺跡 3 乱写
    不想写题解了,把写在草稿纸上的东西整理了一下感谢crashed大佬的题解与对本人问题的回答,没有他我就不会搞懂这道神仙计数题。......
  • CF 1061C
    给定一个序列A,求有多少非空序列B满足B是A的子序列  并且∀ k ∈ [1,lenb],  k∣bk∀ k ∈ [1,lenb​],  k∣bk​, //f[i][j]=f[i-1][j]+(f[i-1......
  • HDOJ1061 Rightmost Digit
    RightmostDigitTimeLimit:2000/1000MS(Java/Others)    MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):60576    AcceptedSubmission(s)......
  • 代码随想录算法Day18 | 513.找树左下角的值 , 112. 路径总和 ,113.路径总和ii , 106.从中
     513.找树左下角的值题目链接:513.找树左下角的值-力扣(LeetCode)题目给定一个二叉树的根节点root,请找出该二叉树的 最底层 最左边 节点的值。假设二叉树中至少......
  • 106、商城业务---消息队列---可靠抵达-发送端确认(ReturnCallback)
    1、编写配置#rabbitmq的抵达队列的发送端确认(ReturnCallback)spring.rabbitmq.publisher-returns=true#只要抵达队列,以异步方式优先回调我们这个returnconfirmspri......