传送门 思路 题目给了一个提示:对于\(n\)个\([0,1]\)的随机变量,其中第\(k\)小的期望大小是\(\frac{k}{n+1}\). 这引导我们枚举边的相对大小的全排列,然后求最小生成树 设\(P(x)\)表示最小生成树中最大一条边的排名是\(x\)的概率,那么有 \[ ans=\frac 1 {m+1}\sum_x xP(x) \Leftrightarrow (m+1)ans=\sum_x xP(x) \] 恰好是\(x\)比较麻烦,再设\(f_x\)表示最大排名大于\(x\)的概…
Description 傲娇少女幽香是一个很萌很萌的妹子,而且她非常非常地有爱心,很喜欢为幻想乡的人们做一些自己力所能及的事情来帮助他们. 这不,幻想乡突然发生了地震,所有的道路都崩塌了.现在的首要任务是尽快让幻想乡的交通体系重新建立起来. 幻想乡一共有 \(n\) 个地方,那么最快的方法当然是修复 \(n-1\) 条道路将这 \(n\) 个地方都连接起来. 幻想乡这 \(n\) 个地方本来是连通的,一共有 \(m\) 条边.现在这 \(m\) 条边由于地震的关系,全部都毁坏掉了.每条边都有一个…
题面传送门 鸽子 tzc 竟然来补题解了,奇迹奇迹( 神仙题 %%%%%%%%%%%% 解法 1: 首先一件很明显的事情是这个最小值可以通过类似 Kruskal 求最小生成树的方法求得.我们将所有边按边权从小到大排序并依次加入图中,如果加入边权为 \(v\) 的边后图首次连通,那么这张图对答案的贡献就是 \(v\). 那么怎么求这个期望值呢?我们考虑枚举加入多少条边后图首次连通,记这个数为 \(c\),那么这种情况对期望的贡献就是 \(\dfrac{c}{m+1}\),如果我们能再求出 \(p_…
题目:https://www.luogu.org/problemnew/show/P3343 1.那个时间与边的大小排名有关,所以需要求一下最大边的期望排名就行. 2.期望排名是这样算的:(排名为1的概率 * 1(1的值) + 排名为2的概率 * 2 + ……) / (m+1) 仔细一想可以变成这样:(排名>=1的概率 + 排名>=2的概率 + ……) / (m+1) 可以是这样?——(连0时不能联通的概率 + 连1时不能联通的概率 + ……) / (m+1) 这里的0.1等可以看作是“前几条…
传送门 思路 首先看到生成树计数,想到Matrix-Tree定理. 然而,这题显然是不能Matrix-Tree定理硬上的,因为还有每个公司只能建一条路的限制.这个限制比较恶心,尝试去除它. 怎么除掉它呢? 容斥! 每当有恶心的限制时,用容斥去除它,也许这是套路? 枚举有哪几所公司承保了所有道路的修建,然后大力Matrix-Tree定理即可. 复杂度\(O(n^32^n)\)有点大,但还是可以过的. 代码 #include<bits/stdc++.h> clock_t t=clock(); na…
「洛谷P1043」数字游戏 日后再写 代码 /*#!/bin/sh dir=$GEDIT_CURRENT_DOCUMENT_DIR name=$GEDIT_CURRENT_DOCUMENT_NAME pre=${name%.*} g++ -O2 $dir/$name -o $pre -g -Wall -std=c++11 if test $? -eq 0; then gnome-terminal -x bash -c "time $dir/$pre;echo;read;" fi*/ #…
「ZJOI2015」地震后的幻想乡 想了半天,打开洛谷题解一看,最高票是_rqy的,一堆密密麻麻的积分差点把我吓跑. 据说有三种解法,然而我只学会了一种最辣鸡的凡人解法. 题意:给一个无向图\(G\),边权为\([0,1]\)间的实数,求这个图的最小生成树的最大边权期望. 提示:对于 \(n\) 个 \([0,1]\) 之间的随机变量 \(x_1,x_2,\dots,x_n\),第 \(k\) 小的那个的期望值是 \(\frac{k}{n+1}\). 考虑使用这个提示来帮助解题. 首先有一个暴力…
\(\mathscr{Description}\)   Link.   给定字符串 \(S\),求 \(S\) 的每个前缀的最小表示法起始下标(若有多个,取最小的).   \(|S|\le3\times10^6\). \(\mathscr{Solution}\)   注意到一个显然的事实,对于某个前缀 \(S[:i]\) 以及两个起始下标 \(p,q\),若已有 \(S[p:i]<S[q:i]\),那么在所有的 \(j>i\) 中,都有 \(S[p:j]<S[q:j]\).换言之,最终…
\(\mathcal{Description}\)   OurOJ & 洛谷 P4372(几乎一致)   设计一个排序算法,设现在对 \(\{a_n\}\) 中 \([l,r]\) 内的元素排序,则重复冒泡排序零次或多次,直到存在某个位置 \(p\in[l,r)\),满足 \(\max_{i=l}^p\{a_i\}<\min_{i=p+1}^r\{a_i\}\),则递归入 \([l,p]\) 和 \((p,r]\),直到区间长度为 \(1\) 时停止.求所有冒泡排序所操作的区间长度之和.  …
\(\mathcal{Description}\)   Link.(洛谷上这翻译真的一言难尽呐.   给定一个 \(n\) 个点 \(m\) 条边的无向图,一条边 \((u,v,a,b)\) 表示从 \(u\) 到 \(v\) 的代价为 \(a\),\(v\) 到 \(u\) 的代价为 \(b\).求从结点 \(1\) 开始的,经过每个点至少一次,每条边恰好一次,最后回到结点 \(1\) 的路径,使得每条边代价的最大值最小.   \(n,a,b\le10^3\),\(m\le2\times10^…