[USACO2021DEC] HILO

Solution

参考自 官方题解 里提到的一篇 Obliteration.pdf,但是里面作者写出了极多错误。。。然后式子还错错得对了。

令 \(y=n-x\)。

我们考虑枚举每一对数的贡献,不妨设为 \(j,i\ (j\in [x+1,n],i\in [1,x])\):

\[\pi =\underbrace{\cdots}_{X} \ j\ \underbrace{\cdots}_{Y} \ i \underbrace{\cdots}_{Z}
\]
  • 对于 \(k\in [1,i)\),它们若位于 \(X,Z\) 则没有限制,位于 \(Y\) 则得满足它不是 "LO";

  • 对于 \(k\in [i+1,x]\),它们只能位于 \(Z\);

  • 对于 \(k\in [x+1,j)\),它们只能位于 \(Z\);

  • 对于 \(k\in [j+1,n]\),它们没有任何限制。

我们枚举第一类位于 \(X,Y\) 的个数 \(m\),限制是位于 \(X\) 中的 \(\max\) 大于 \(Y\) 中的 \(\max\),显然两者是对称的,所以方案数为 \(\binom{i-1}{m} \cdot \frac{(m+1)!+[m=0]}{2}\)。

接下来推式子:

\[\begin{aligned}ans&=\sum_{i\le x}\sum_{j\le y} n^{\underline{y-j}} \sum_{m}\binom{i-1}{m} \cdot \frac{(m+1)!+[m=0]}{2}\cdot (n-(y-j+1)-m-1)!\\&=\sum_{j\le y} n^{\underline{j-1}}\sum_{i\le x}\sum_{m}\binom{i-1}{m}\cdot \frac{(m+1)!+[m=0]}{2}\cdot (n-j-m-1)!\\&=\sum_{j\le y} n^{\underline{j-1}}\sum_{m}\binom{x}{m+1}\cdot \frac{(m+1)!+[m=0]}{2}\cdot (n-j-m-1)!\\&=\sum_{j\le y}\frac{n^{\underline{j-1}}}{2}\left(x(n-j-1)!+\sum_{m\ge 1}\frac{x!}{(x-m)!}(n-j-m)!\right)\\&=\sum_{j\le y}\frac{n^{\underline{j-1}}}{2}\left(x(n-j-1)!+x!(y-j)!\sum_{m\ge 1}\binom{n-j-m}{y-j}\right)\\&=\sum_{j\le y}\frac{n^{\underline{j-1}}}{2}\left(x(n-j-1)!+x!(y-j)!\binom{n-j}{y-j+1}\right)\\&=\sum_{j\le y}\frac{n^{\underline{j-1}}}{2}\left(x(n-j-1)!+\frac{x(n-j)!}{y-j+1}\right)\\&=\frac{n!}{2}\sum_{j\le y}\left(\frac{x}{(n-j)(n-j+1)}+\frac{x}{(n-j+1)(y-j+1)}\right)\\&=\frac{n!}{2}\sum_{j\le y}\left(\frac{x}{n-j}-\frac{x}{n-j+1}+\frac{1}{y-j+1}-\frac{1}{n-j+1}\right)\\&=\frac{n!}{2}\left(1-\frac{x}{n}+H_y-(H_n-H_{n-y})\right)\\&=\frac{n!}{2}\left(H_x+H_y-H_n+\frac{y}{n}\right)\end{aligned}
\]

其中 \(H_n\) 是调和级数前缀和。

于是我们得到了可以对 \(x=0\sim n\) 均 \(\mathcal O(1)\) 求解的线性做法。

时间复杂度 \(\mathcal O(n)\)。

[USACO2021DEC] HILO 踩标做法的更多相关文章

  1. 【NFLSPC#4】嘉然今天吃什么(踩标做法)

    [NFLSPC#4]嘉然今天吃什么 感谢 @zhoukangyang 神仙的帮助. Solution 令 \(s_i\) 表示选了 \(i\) 个灯后仍然不合法的概率,那么 \(E(x)=\sum_{ ...

  2. 「ARC 139F」Many Xor Optimization Problems【线性做法,踩标】

    「ARC 139F」Many Xor Optimization Problems 对于一个长为 \(n\) 的序列 \(a\),我们记 \(f(a)\) 表示从 \(a\) 中选取若干数,可以得到的最 ...

  3. 【BZOJ-3673&3674】可持久化并查集 可持久化线段树 + 并查集

    3673: 可持久化并查集 by zky Time Limit: 5 Sec  Memory Limit: 128 MBSubmit: 1878  Solved: 846[Submit][Status ...

  4. ZJOI2019一轮停课刷题记录

    Preface 菜鸡HL终于狗来了他的省选停课,这次的时间很长,暂定停到一试结束,不过有机会二试的话还是可以搞到4月了 这段时间的学习就变得量大而且杂了,一般以刷薄弱的知识点和补一些新的奇怪技巧为主. ...

  5. SCOI 2018 划水记

    (此处不应有目录,省选爆零的过程得慢慢看) Day -n 一诊 说真的,在没看到“第一次诊断性考试”之前,一直以为是“一整”,真是可怕,初中教育都开始像UW中的最高祭司学习了. 感觉题目很gg.于是考 ...

  6. LOJ3048 「十二省联考 2019」异或粽子

    题意 题目描述 小粽是一个喜欢吃粽子的好孩子.今天她在家里自己做起了粽子. 小粽面前有 $n$ 种互不相同的粽子馅儿,小粽将它们摆放为了一排,并从左至右编号为 $1$ 到 $n$.第 $i$ 种馅儿具 ...

  7. NOIP练习赛题目4

    肥得更高 难度级别:C: 运行时间限制:1000ms: 运行空间限制:51200KB: 代码长度限制:2000000B 试题描述 自2009年以来,A.B站的历史就已经步入了农业变革的黎明期.在两站的 ...

  8. 【数学】【P5150】 生日礼物

    Description 给定 \(n\),求 \[\sum_{i}~\sum_j~[lcm(i,j)~=~n]\] input 一行一个整数代表 \(n\) Output 一行一个整数代表答案 Hin ...

  9. Wolfycz的娱乐赛题解

    现在不会放题解的!比赛完了我会把题解放上来的 祝大家玩的愉快~ 等会,cnblogs不会显示更新时间?我禁赛我自己 UPD:2018.12.15 欢迎大家爆踩标程- painting 我们考虑转化题意 ...

随机推荐

  1. 聊聊 DisplayObject 的x/y/regX/regY/rotation/scale/skew 属性

    首先要指出的是:DisplayObject 实例的属性<x, y> 与 graphics.draw*(x, y, ...) 的参数<x, y>没有关系. 在原生的 Canvas ...

  2. vue中判断页面滚动开始和结束

    参考链接:https://www.jianshu.com/p/adad39705ced    和  https://blog.csdn.net/weixin_44309374/article/deta ...

  3. 小程序申请测试appid

    话不多说,直接上图:  1. 登录微信官方文档: https://developers.weixin.qq.com/miniprogram/dev/devtools/sandbox.html  2. ...

  4. 【SpringBoot实战】数据访问

    前言 在开发中我们通常会对数据库的数据进行操作,SpringBoot对关系性和非关系型数据库的访问操作都提供了非常好的整合支持.SpringData是spring提供的一个用于简化数据库访问.支持云服 ...

  5. 微信小程序,制作属于自己的Icon图标

    前言 最近在接手一个微信小程序,发现里面的图标都是使用的image组件,看起来非常别扭,加载也不太顺畅. 就想着看看微信有没有类似自带的图标库可以使用. 有是有,就是太少了,翻来翻去好像也就 8 种, ...

  6. python数据类型内置的方法

    数据类型的内置方法 在日常生活中不同类型的数据具有不同的功能 eg:表格数据文件具有处理表格的各项功能(透视表 图形化 公式计算) 视频数据文件具有快进 加速等各项功能 ... 1.整型int # 方 ...

  7. Typecho文章设置永久链接

    说明 想要给Typecho文章一个独立的url,或按照自己的格式来 这时候我们就要设置永久链接 Typecho设置文章永久链接 设置伪静态 伪静态设置要取决于是nginx还是apache,详情请参考& ...

  8. 【课程汇总】OpenHarmony 成长计划知识赋能第二期课程(附链接)

    OpenHarmony 开源开发者成长计划第二期知识赋能直播课程以入门为主,共设置 8 节课,覆盖了应用开发.设备开发.内核驱动等多个技术领域.带领开发者快速了解如何玩转 OpenHarmony.如何 ...

  9. Educational Codeforces Round 121 (Rated for Div. 2)——A - Equidistant Letters

    A - Equidistant Letters 题源:https://codeforces.com/contest/1626/problem/A 今天上午VP了这场CF,很遗憾的是一道题也没写出来,原 ...

  10. 『现学现忘』Git基础 — 7、设置Git Bash终端默认路径

    目录 1.Git Bash默认路径 2.如何查看Git Bash终端默认路径 3.如何修改Git Bash终端的默认路径 4.拓展:指定目录进入Git Bash终端 5.注意事项 如果您不熟悉Git命 ...