数学做题笔记

ABC267G Increasing K Times#

[ABC267G] Increasing K Times
一道计数题.
主要是是一个比较经典的trick才来做的这题.

就是形如已知一个序列,求有多少个排列满足一个条件,这个条件一般是制约相邻两个元素的

那么可以采用一个技巧就是序列排序,然后按照某种顺序插入

考虑有多少排列问题,那么可以先对a 排序然后依次插入。
每次插入一个最大值,那么只需要求有多少个位置满足插入后满足条件的位置 +1,然后直接跑一遍简单的背包即可。


ARC148E ≥ K#

ARC148E ≥ K

一道计数题。

对于这种对相邻两个元素都有影响的问题,可以考虑将元素按一定顺序一个个加入序列,考虑其对整个方案数的贡献。

1.先将元素从小到大排序。

2.考虑两个维护左右区间的指针 l,r,令 aral+ark 的最小编号,其中 [1,l1] 以及 [r+1,n] 这两段中的元素都已经加入序列。

这样就可以知道一共加入了 nr+l1 个元素,有 nr+l 个空位可供下一个元素放置。

  • 放入 ar

    此时一共有 l1 个元素无法满足将 ar 放入其左边或者右边时无法满足 k的要求(之所以是 l1 是因为既然 r并没有在 l 之前的元素遍历到时就放入,那么自然前面的元素也是不满足条件的);

    那么此时就有 (nr+l)2×(l1) 个空位可选。

  • 放入 al

    [1,l1] 中的元素和 al 也不能满足条件;

    不会有 al+al1k ,因为如果这样的话 al就会在遍历到 l 还是 l1 是就被当作 ar 放入;

    同理,有 (nr+l)2×(l1) 个空位可选。

  • 注意,因为有相同元素,因此要在最后除以相同元素的排列数以消除影响。


LG T316869 Before I Rise#

一道计数题.
简化题意之后就是将一个只有环和链,边的种类为0,1交替的图,求满足交换节点之后图仍不变的排列数
先考虑某个环或链自身的交换方案数
1.环
在每个环内部交换的方案数为环的 size
2.链
节点数为奇数的链自身有1种
偶数有2种
接下来考虑同种形态之间的排列,就是求排列数即可
但是需要注意分类,对于节点数为偶数的链还需要分为两种形态,例如


这两种是不能交换的
定义 ai 为节点数为 i 的环, bi,0/1 为长度为 i 的第一条边为 0/1 的链
所以有最后的公式
ans=iai(ai)!i/2Z(bi,0)!(bi,1)!2bi,0+bi,1(i+1)/2Z(bi,0+bi,1)!


LG3349 [ZJOI2016]小星星#

LG3349 小星星
将问题抽象化:
一个 n 个节点的树,和一个 n 个节点的图,要求给树上的每个节点编号,使得编号是一个 1n 的排列,并且要满足树上任意一条边 (u,v),图中一定要有边 (xu,xv)xu 表示点 u 的编号),求方案数。
暴力的做法是定义状态 f[i][j][S] 表示节点 i 编号为 ji 的子树内的编号集合为 S 的方案数。
但是这样的瓶颈在于枚举子集,复杂度是 O(n3×3n) 的,显然TLE
Q:为什么要记录 S 这一维?
A:要求中有「编号是一个 1n 的排列」。
尝试把「编号是一个 1n 的排列」这一条件去掉,就不用记录 S 了。
这样只需要定义 f[i][j] 为在 i 的子树内,点 i 的编号为 j 的方案数。
而这时候会出现重复编号,怎么办呢?
容斥!
2n枚举 {1,2,...,n} 的一个子集 S,强制规定树上每个点的编号必须是 S 的子集,然后每次 O(n3) 一次DP,总方案数为:
(S∣=n(|S|=n)(S∣=n1)(|S|=n1)+(S∣=n2)+(|S|=n2)...)...
复杂度降到 O(n3×2n) ,在UOJ上需要进行一定的常数优化。
本篇题解转载自

LG7322 排列变换#

题目类似于滑动窗口。
所有排列初始都会有 1 个最大值,考虑什么时候会更新答案
1.滑动窗口推掉最大值

a=i=kn(i1k1)(k1)!(nk)!(nk)

2.滑动窗口加入最大值

b=i=k+1n(i1k)k!(nk1)!(nk)

3.考虑有可能又推掉最大又加入最大,因此需要去重

c=i=k+1n(i1k)(k1)!(nk1)!(nk)

ans=a+bc+n!

posted @   xkjie  阅读(26)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示
主题色彩