ZJOI2020
[ZJOI2015] 地震后的幻想乡
给定一个无向图 \(G\) ,\(n\) 个点 \(m\) 条边每条边权为 \([0,1]\) 的随机实数,求这张图的最小生成树的最大边权期望。
\(1\le n\le 10,1\le m\le \frac{n(n-1)}{2}\) 。
Solution
引理 \(1\) :
\(n\) 个 \([0,1]\) 随机变量 $x_1,\cdots,x_n $ ,第 \(k\) 小的期望值是 \(\frac{k}{n+1}\)
证明:枚举第 \(k\) 小值为 \(x\) :\(\binom{n}{k}\int_0^1x \cdot x^{k-1}\cdot (1-x)^{n-k} dx=\frac{k}{n+1}\) 。
暴力枚举 \(m\) 条边的相对大小关系,套引理即可做到 \(\mathcal O(m!poly(n))\) 。
考虑状压 dp ,定义 \(f_{S,i},g_{S,i}\) 表示点集 \(S\) ,用了 \(i\) 条边,且点集不连通/连通的方案数,\(d_{S}\) 表示点集 \(S\) 导出子图的边数。
考虑 \(f\) 的转移,我们枚举一个连通块(不妨是 \(lowbit(S)\) 所属的那个块),其他的点之间任意连边,则: \(f_{S,i}=\sum\limits_{lowbit(S) \in T\subset S}\sum\limits_{j=0}^{|d_T|}g_{T,j}\binom{|d_{S-T}|}{i-j}\)
注意到 加了 i 条边恰好连通概率 = 加之前不连通概率 - 加之后不连通概率 ,因此答案为:
\]
时间复杂度 \(\mathcal O(3^nm)\) 。
Day1
T1
给定一个由字符 \(\text{'a', 'b'}\) 构成的字符串 \(str\) 。
一个串为好串的定义是:串长为偶数,且左右两半相等。比如说 \(abcdeabcde\) 就是好串。
有 \(q\) 次询问,询问区间 \([l,r]\) 内有多少个本质不同的好串(也就是一模一样的好串只算 \(1\) 次)。
\(1\le n,q\le 2\times 10^5\)
T2
给定一颗广义线段树,读入按中序遍历的方式告诉你每根线段 \([l,r]\) 的 \(mid\) 值。
你需要执行 \(k\) 次 选区间 操作,每次等概率选择一个区间 \([ql, qr]\) 满足 \(1\le ql\le qr\le n\) ,并且相应在线段树上打懒标记。
对于每个区间 \([ql, qr]\),执行 \(\text{modify(1, 1, n, ql, qr)}\) :
void pushdown(int u) {
if (tag[u]) {
tag[lson[u]] = 1;
tag[rson[u]] = 1;
tag[u] = 0;
}
}
void modify(int u, int l, int r, int ql, int qr) {
if ([l, r] ∩ [ql, qr] = 空集) return ;
if (ql <= l && r <= qr) {
tag[u] = 1;
return ;
}
int mid = 读入的 mid 值;
pushdown(u);
if (ql <= mid) modify(lson[u], l, mid, ql, qr);
if (qr > mid) modify(rson[u], mid + 1, r, ql, qr);
}
请求出期望下线段树中 \(tag\) 值为 \(1\) 的线段的个数。
\(n\) 在 \(10^5\) 级别, \(1\le k\le 10^9\) 。
T3
给定一个长度为 \(n\) 的序列 \(a_1,a_2,...,a_n\),你可以执行以下三种操作:
- 选择一个区间 \([l,r]\) ,让区间内的数全减 \(1\)
- 选择一个区间 \([l,r]\) ,让区间内下标是奇数的数全减 \(1\)
- 选择一个区间 \([l,r]\) ,让区间内下标是偶数的数全减 \(1\)
你需要最小化你的操作次数,使得所有数变成 \(0\) 。
Day2
T1
\(Alice\) 和 \(Bob\) 在 树/基环树 上的游戏。。。
题面有点长,咕咕
T2
给定 \(n\) 个数 \(a_1,a_2,...,a_n\) ,每次等概率选择一个数(选过的数下次可能还会被选)。
问期望下取多少次数,才能出现 \(k\) 个连续的数(也就是满足 \(a_{i_1},a_{i_2},a_{i_3},...\) 依次 \(+1\))?
\(1\le n\le 2\times 10^5, 1\le a_i\le 10^9\)(好像)
T3
给定 \(n\) 个方程组,参数 \(a_i,c_i\)。
\]
给出一个扰动 \(err\) ,每个 \(p_i\) 均为 \([\lceil - \frac{err}{2} \rceil, \lceil \frac{err}{2} \rceil]\) 内随机的一个数。
你需要找到一个 \(x\) ,使得它满足上述所有条件。
数据保证有且仅有一个 \(x\) 满足条件。
\(n=2000, 1\le a_i,c_i,p\le 10^{18}\)
如果要用 \(\text{__int128}\) ,请手写。
ZJOI2020的更多相关文章
- P6631 [ZJOI2020] 序列
可以将问题用形象的方式来表述.给定一排点,第 \(i\) 个点有它需要的覆盖次数 \(a_i\).有两种线段,一种能覆盖连续的一些点,称其为连续线段:另一种能覆盖相邻间隔为 \(1\) 的一些点,称其 ...
- [ZJOI2019]游记之我的第一次省选--自闭记
2019/3/23 day -1 今天是体育中考....(祝我好运) 实心球再次投出测量范围,虽然成绩是10.5,但是目测有15米. 立定跳远2.70,好近,我爸叫我跳2.8的QwQ. 1000米最后 ...
- Lyndon 相关的炫酷字符串科技
浅谈从 Lyndon Words 到 Three Squares Lemma By zghtyarecrenj 本文包括:Lyndon Words & Significant Suffixes ...
随机推荐
- 认识 Function.prototype.bind()
欢迎前端爱好者加入QQ群:112916679 答疑解惑,且可获取更多前端资料! bind()方法创建一个新的函数, 当被调用时,将其this关键字设置为提供的值,在调用新函数时,在任何提供之前提供一个 ...
- 还原lvm逻辑卷创建整个过程
很多情况入职的时候,系统可能已规划过的,但是有的信息也不是很完整,比如下面的lvm逻辑卷我们先不管对与错,利用一些工具来了解当前lvm逻辑卷的情况 系统采样: [root@fp-web-112 var ...
- Java基础之浅谈集合
Java基础知识.关于List.Set.Map接口的了解,以及ArrayList.LinkedList.HashSet.TreeSet.HashMap.TreeMap...
- js刷新页面window.location.reload()
window.location.reload()刷新当前页面 window.parent.location.reload()刷新父亲对象(用于框架) opener.location.reload()刷 ...
- Warmup小记
什么是warmup 热身,在刚刚开始训练时以很小的学习率进行训练,使得网络熟悉数据,随着训练的进行学习率慢慢变大,到了一定程度,以设置的初始学习率进行训练,接着过了一些inter后,学习率再慢慢变小: ...
- C# 静态常量(const)动态常量(static、readonly)用法区别
C# 常量的命名方法 一个低级错误 readonly.const 代码 使用方式 支持类型 维护性 性能比较 优先使用 C# Static 与 Java Static C# Const 与 Java ...
- 真实本人亲测Elasticsearch未授权访问漏洞——利用及修复【踩坑指南到脱坑!】
如要转载请注明出处谢谢: https://www.cnblogs.com/vitalemontea/p/16105490.html 1.前言 某天"发现"了个漏洞,咳咳,原本以为这 ...
- 【大话云原生】kubernetes灰度发布篇-从步行到坐缆车的自动化服务升级
此文系[大话云原生]系列第四篇,该系列文章期望用最通俗.简单的语言说明白云原生生态系统内的组成.架构以及应用关系.从这篇开始我们要开始针对Kubernetes进行介绍了,本文内容如下: 一.Kuber ...
- React 父组件调用子组件的方法
父组件调用子组件的方法 React v16.3.0 及以后版本使用 import React, {Component} from 'react'; export default class Paren ...
- Bugku CTF练习题---MISC---眼见非实
Bugku CTF练习题---MISC---眼见非实 flag:flag{F1@g} 解题步骤: 1.观察题目,下载附件 2.拿到手以后发现是一个压缩包,打开是一个Word文档,观察其中的内容,除了开 ...