A

题面

一个 \(1\dots n\) 的排列 \(p\) 和一个 \(1\dots n-1\) 的排列 \(q\) 满足

对排列 \(I=1,2,\dots,n\) 进行 \(n-1\) 次交换:

  • 交换 \(I[q[i]]\) 与 \(I[q[i]+1]\) .

做完操作后满足 \(I=p\) .

给定 \(p\),计数 \(q\),答案对 \(10^9+7\) 取模 .

题解

一个 \((q,q+1)\) 交换过后显然左右就不可能再交流了 .

于是每个区间的答案可以拆成俩区间,考虑区间 dp .

丢一下柿子,需要组合数学知识:

\[dp_{l,r} = \sum_k \dbinom{r-l-1}{k-l}\cdot dp_{l,k}\cdot dp_{k+1,r}
\]

B

题面

在 \(n\times n\) 每个方格上随机地填入 \(1\) 到 \(m\) 之间的正整数(每个方格填的数互不相同),然后随机地选出 \(k\) 个数字,把它们出现在棋盘上的方格涂黑 .

设有 \(R\) 行被整行涂黑,\(C\) 列被整列涂黑,则得到 \(2^{R+C}\) 分 .

求期望得分 .

题解

枚举 \(R,C\) 算概率 .

显然涂黑格子数为 \(x = Rn+Cn-RC\) .

算一个局面的超集概率是容易的 .

考虑 \(2^{R+C}\) 的组合意义,于是把所有概率加起来就凑出这个贡献了 .

大力算,概率是古典概型,俩组合数相除即可 .

upd. 社论

C

题面

原题

题解

中序遍历,最长不下降子序列 .

D

题面

一个序列 \(a\) .

一个区间 \([l,r]\) 是好的,当且仅当存在 \(k\in[l,r]\),使得对于任意 \(i\in[l,r]\),有 \(a_k \mid a_i\) .

求序列最长好子串 .

题解

这个条件等价于区间 \(\gcd\) 在区间中存在 .


俩 \(\log\) 解法比较好想,枚举左端点二分右端点即可 . 但这玩意涉及一个世界难题——判断数是否在区间中 .

于是考虑枚举 \(a_k\),左右分别二分出最长子串,就是 \(1\) 个 \(\log\) 了 .

upd. 题解好像错了,st 表区间 \(\gcd\) 询问复杂度是带 \(\log\) 的,所以实际复杂度可能是小常数俩 \(\log\) .

Keven_He 你个暴力优化艹过去的不要评论了!!/fn

upd. 反转了,用三区间合并(Sqrt Tree)似乎可以靠谱一 \(\log\) .

upd. 可以记区间 \(\min\) 和区间 \(\gcd\) 然后随便二分做 .

st 表区间 \(\gcd\) 预处理复杂度是一个 \(\log\) 的证明可以看 OI-wiki .

丽泽普及2022交流赛day14的更多相关文章

  1. 丽泽普及2022交流赛day22 无社论

    开始掉分模式 . T3 有人上费用流了???(id) 不用 TOC 了 . T1 暴力 T2 没看见 任意两圆不相交,gg 包含关系容易维护,特判相切 . 单调栈即可 T3 贪心 T4 神秘题

  2. 丽泽普及2022交流赛day21 社论

    A 暴力 . greater<double> -> greater<int> \(100\) -> \(50\) 代码丢了 . B dp . 考场上代码抢救一下就过 ...

  3. 丽泽普及2022交流赛day20 1/4社论

    目录 T1 正方形 T2 玩蛇 T3 嗷呜 T4 开车 T1 正方形 略 T2 玩蛇 略 T3 嗷呜 (插一个删一个?) 找出相同的,丢掉循环节 . 感觉非常离谱,,, 正确性存疑 正确性问 SoyT ...

  4. 丽泽普及2022交流赛day19 半社论

    目录 No Problem Str Not TSP 题面 题解 代码 Game 题面 题解 代码 No Problem 暴力 Str 存在循环节,大力找出来即可,长度显然不超过 \(10^3\) . ...

  5. 丽泽普及2022交流赛day18 社论

    A 暴力扫一遍 B 算法 0 似乎是二分 算法 1 随便贪心 C 算法 1 枚举一个点作为最大值 / 最小值,用单调栈维护其作为答案的左右端点即可轻易计算 . 时间复杂度 \(O(n)\) . 算法 ...

  6. 丽泽普及2022交流赛day17 社论

    http://zhengruioi.com/contest/1088 SoyTony 重新 rk1 . stO SoyTony Orz 省流:俩计数 . 目录 目录 A 题面 题解 Key 算法 1( ...

  7. 丽泽普及2022交流赛day16 社论

    这场比较平凡吧 . 省流: http://zhengruioi.com/contest/1087 目录 目录 A. Gene 题面 题解 算法一(正解) 算法二 B. Fight 题面 题解 算法一( ...

  8. 丽泽普及2022交流赛day15 社论

    前言 link 太牛逼了,补完我一定放代码 . orz 越看越牛逼 orz . 时间复杂度都是口胡,不要信 . 以下是目录 目录 目录 前言 A 题面 题解 代码 B 题面 题解 代码 C 题面 题解 ...

  9. 记:青岛理工ACM交流赛筹备工作总结篇

    这几天筹备青岛理工ACM交流赛的过程中遇到了不少问题也涨了不少经验.对非常多事也有了和曾经不一样的看法, ​一直在想事后把这几天的流水帐记一遍,一直没空直到今天考完C++才坐下来開始动笔.将这几天的忙 ...

随机推荐

  1. 使用CSS实现《声生不息》节目Logo

    声明:本文涉及图文和模型素材仅用于个人学习.研究和欣赏,请勿二次修改.非法传播.转载.出版.商用.及进行其他获利行为. 背景 <声生不息> 是芒果TV.香港电视广播有限公司和湖南卫视联合推 ...

  2. 升级 package.json 内所有包的版本号

    安装 全局安装这个库 npm-check-updates,因为后续依靠它来实现更新 package.json 中包的版本号 yarn global add npm-check-updates 食用 看 ...

  3. HTML表格以及表单

    学习内容: 1.HTML表格 代码实例: <%@ page language="java" import="java.util.*" pageEncodi ...

  4. k8s的api资源

    NAME SHORTNAMES APIGROUP NAMESPACED KIND 资源用途说明 bindings     TRUE Binding 已弃用.用于记录一个object和另一个object ...

  5. Go微服务框架go-kratos实战03:使用 gorm 实现增删改查操作

    一.简介 在上一篇文章 go-kratos实战02 中,详细介绍了用 kratos 编写项目代码的步骤.这篇就在上篇基础上,再结合 Go 数据库操作库 gorm 一步一步来实现一个简单的增删改查操作. ...

  6. 线程安全性-原子性之synchronized锁

    原子性提供了互斥访问:同一时刻只能有一个线程进行操作: 除了Atomic包类之外,还有锁可以实现此功能: synchronized:  java关键字,依赖于jvm实现锁功能,被此关键字所修饰的,都是 ...

  7. SpringCloud微服务实战——搭建企业级开发框架(四十二):集成分布式任务调度平台XXL-JOB,实现定时任务功能

      定时任务几乎是每个业务系统必不可少的功能,计算到期时间.过期时间等,定时触发某项任务操作.在使用单体应用时,基本使用Spring提供的注解即可实现定时任务,而在使用微服务集群时,这种方式就要考虑添 ...

  8. 阿里云FTP服务配置

    阿里云的CENTOS 7.4 并没有开启防火墙服务 所以好多人配置了FTP后会出现各种不能访问的问题 关键原因在于端口没有开放.设置端口阿里云ECS的管理控制台中"安全组" &qu ...

  9. 在C#中使用正则表达式最简单的方式

    更新记录 本文迁移自Panda666原博客,原发布时间:2021年5月11日. 在.NET中使用正则表达式与其他语言并无太大差异.最简单的使用就是使用Regex类型自带的静态方法. 注意:在.NET中 ...

  10. JavaScript有哪些数据类型,它们的区别?

    基本数据类型:number.string.boolean.Undefined.NaN(特殊值).BigInt.Symbol 引入数据类型:Object NaN是JS中的特殊值,表示非数字,NaN不是数 ...