http://zhengruioi.com/contest/1088

SoyTony 重新 rk1 .

stO SoyTony Orz

省流:俩计数 .

目录

时间复杂度瞎算的 .

A

题面

一个 \(n\times m\) 的字符矩阵,从左上走到右下,只能往右往下走,问经过路径字典序最小是啥 .

题解

Key

每个字符贪心地走,当且仅当往右和往下字符相同时可能有两种后继状态

算法 1(SoyTony)

BFS .

算法 2(he_____he)

提交记录 .

口胡一下,可能理解错了 .

考虑 dp,由于字符串显然存不下(会 MLE),于是考虑维护排名 .

动态维护排名即可,因为合法的排名不会很多 .

算法 3

等价于 算法 1

按照走的步数枚举算贡献并标记转移点即可 .

B

题面

有 \(n\) 个玻璃杯,每杯里都有水 .

把这 \(n\) 杯里的水互相倒,最终使得只有 \(k\) 个杯子里有水。

易知从把水从第 \(i\) 个玻璃杯倒到第 \(j\) 个花费是 \(c_{i,j}\),求最小花费。

题解

乱搞(artalter)

首先这个玩意可以按最小生成树走 .

但是这个贪心显然是错的,于是我们钦定两条边然后暴力算最小生成树答案取最优 .

然后……就过了?(

算法

状压 dp,令 \(dp_S\) 表示 \(S\) 集合有水的最小花费,枚举一次倒水即可 .

时间复杂度 \(O(2^nn^2)\) .

C

题面

一张 \(n\) 个点的无向完全图,问边权范围 \(1\sim L\),且 \(1\to n\) 最短路为 \(k\) 的图数量 .

BZOJ3868

题解

算法

显然最短路大于 \(k\) 就没用了,可以直接设为 \(k+1\) .

枚举最短路为 \(s\) 的点数量 \(t_s\),于是可以钦定一个顺序算一下每个点到 \(1\) 的最短路 \(d\) .

考虑算边权的取值:

  • 若 \(d_u=d_v\),显然 \(w(u,v)\) 取啥都行 .
  • 若 \(d_u<d_v\),则边权不能小于 \(d_v-d_u\),要不然会破坏最短路 .
  • 若 \(d_u>d_v\),和上面类似 .

那么边权就有 \(L-(d_u-d_v)+1\) 种可能(\(d_u>d_v\))

但是发现 \(d_u\) 的最短路性质必须要有一个至少一个 \(v\) 来保证 \(d_v + w(v,u) = d_u\)(能取到最短路).

然而使得那个柿子成立的边权 \(w\) 有 \(L-(d_u-d_v)\) 种可能(如果 \(d_u\ge k\) 这玩意就没贡献了,要丢掉).

于是目前的总方案数就是

\[ans = \prod(L-(d_u-d_v)+1) - \prod(L-(d_u-d_v))
\]

然而我们枚举的是最短路为 \(s\) 的点数量 \(t_s\),没有顺序(注意相同数)所以要再乘一个 \((n-2)!/\),然后因为重复要除以一个 \(\prod a_i\) .

时间复杂度 \(O\left(\dbinom nkn^2\log n\right)\)(抄的别的博客的,存疑)


这题真的牛逼,,,

似乎可以说是大力枚举题钓鱼/kx

D

题面

一个 \(n\) 个点的无向图,若满足:

  1. 无重边自环
  2. 删掉一条边或加上一条边后,满足 \(1\) 且存在一条欧拉回路

则称其是可爱的 .

求 \(n\) 个点可爱图个数,对 \(10^9+7\) 取模 .

两个图不同当且仅当某条边 \((u,v)\) 恰好只存在于某一个图中

题解

dp

显然题目等价于 \(n\) 点欧拉图个数乘上 \(\dbinom n2\) .

令 \(f_n\) 表示 \(i\) 个点的欧拉图数量,\(g_n\) 表示 \(n\) 个点度为偶数的无向图数量 .

众所周知图存在欧拉回路当且仅当没有奇点 .

于是考虑加一个点,容斥掉不连通的

如果原图存在一个欧拉子图,那么 \(i\) 必然要连另外一方面,因为要保持性质,\(i\) 必须连奇点,于是就不连通了(\(i\) 连所有奇点) .

\(g_n\) 显然等于 \(2^{\tbinom{n-1}2}\)(钦定 \(n-1\) 个点随便连,剩下那个点用来平衡奇度点),于是递推式就是

\[f_n=g_n-\sum_{i=1}^{n-1}f_ig_{n-i}\dbinom{n-1}{i-1}
\]

Bonus

zero4338 说 \(f\) 的 EGF 是 \(g_{n-1}\) 的 EGF 的 \(\ln\) .

然后由于神秘的模 \(10^9+7\),分治 ntt 俩 \(\log\),MTT 一 \(\log\) .

我打不出代码来验证不了正确性,不过 zero 爷说的话哪里会有错呢?/kx

details .

(众所周知这个 \(g\) 可以 \(O(1)\) 求)


我草有原题,叫 建设游乐园,百度能搜到 题解 .

\(\ln\) 的结论是对的,等我变强后看看为啥吧 qwq .


zero4338 只说了连通图个数 EGF 是随便图个数 EGF 的 \(\ln\) .

但是这玩意和欧拉图个数有啥关系啊 /yun .

upd. 度数都为偶数的图可以分成若干个欧拉图 —— zero4338

然而 EI 给出了一模一样的式子,并丢了一个 OEIS 序列(我搜不到是因为我第一项错了qwq):

颤抖,颤抖。

丽泽普及2022交流赛day17 社论的更多相关文章

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  8. 丽泽普及2022交流赛day14

    目录 A 题面 题解 B 题面 题解 C 题面 题解 D 题面 题解 A 题面 一个 \(1\dots n\) 的排列 \(p\) 和一个 \(1\dots n-1\) 的排列 \(q\) 满足 对排 ...

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

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

随机推荐

  1. c++:-7

    上一节主要学习C++中的函数模版.数据结构以及排序查找操作:c++:-6,本节学习C++的范型程序设计和STL: 范型程序设计 编写不依赖于具体数据类型的程序 将算法从特定的数据结构中抽象出来,成为通 ...

  2. Vagrant之CentOS

    Vagrant之CentOS Vagrant官网 https://www.vagrantup.com https://app.vagrantup.com/boxes/search https://ap ...

  3. 710. Random Pick with Blacklist - LeetCode

    Question 710. Random Pick with Blacklist Solution 题目大意:给一个N,表示一个范围[0,N),给一个黑名单列表blacklist,其中blacklis ...

  4. 好客租房10-jsx的基本使用

    1.1createElement()的问题 1繁琐不简洁 2不直观 无法一眼看出所描述的结构 3不优雅 用户体验不爽 React.createElement("div",     ...

  5. vue生命周期加载顺序

    1.beforeCreate(创建前)表示实例完全被创建出来之前,vue 实例的挂载元素$el和数据对象 data 都为 undefined,还未初始化.此钩子函数不能获取到数据,dom元素也没有渲染 ...

  6. 116_Power Pivot 先进先出原则库龄库存计算相关

    博客:www.jiaopengzi.com 焦棚子的文章目录 请点击下载附件 一背景 前面写过了一个关于进销存的案例,留一个话题就是先进先出的库存计算. 刚好有朋友提了相关这样的需求.先来看看效果. ...

  7. 如何实现将拖动物体限制在某个圆形内--实现方式vue3.0

    如何实现蓝色小圆可拖动,并且边界限制在灰色大圆内?如下所示 需求源自 业务上遇到一个组件需求,设计师设计了一个"脸型整合器"根据可拖动小圆的位置与其它脸型的位置关系计算融合比例 如 ...

  8. 功耗优化之Sensor功耗分析

    功耗优化之Sensor功耗分析 一.Sensor功耗问题分类 二.Sensor功耗问题分析方法 SSC子系统引起系统无法进入AOSD问题分析: SSC子系统频繁唤醒AP问题分析方法 SSC子系统的GP ...

  9. GO GMP协程调度实现原理 5w字长文史上最全

    1 Runtime简介 Go语言是互联网时代的C,因为其语法简洁易学,对高并发拥有语言级别的亲和性.而且不同于虚拟机的方案.Go通过在编译时嵌入平台相关的系统指令可直接编译为对应平台的机器码,同时嵌入 ...

  10. neo4j中重复节点问题

    neo4j中重复节点问题 neo4j中,在导入csv文件时,可能会出现有重复节点的现象.可以分为以下步骤解决:1.先查看下某个标签下的节点总数match (n:PERSON) return count ...