首页 > TAG信息列表 > HEOI2015

题解 P4111 [HEOI2015]小 Z 的房间

题解 题目大意:给定一个无向图,求它的生成树个数。 一道裸的矩阵树定理,外加一些建图的技巧。 矩阵树定理 对于一个 \(Laplace\) 矩阵,其去掉任意一行后的行列式即为答案。 行列式不会的看这里 \(Laplace\) 矩阵是一个无向图的邻接矩阵转化而来的,其中 \(L_{i,i}\) 代表 \(i\) 的度数,\(

P4111 [HEOI2015]小 Z 的房间(矩阵-树定理)

矩阵-树定理 (\(Kirchhoff's\ \ matrix\ \ tree\ \ theorem\)) 前言: 首先这个玩意集训的时候就已经讲过了。 但是当时并没有认真听。 现在回头看这玩意…… 前置知识: \(1\):拉普拉斯 矩阵 极其重要 \(2\):行列式 极其重要 \(3\):高斯消元 极其重要 \(4\):矩阵树定理 这个了解一下这个名

P4111 [HEOI2015]小 Z 的房间

【题意&分析】 裸的无向图,求生成树个数,详见这里 注意这个mod不是质数,需要辗转相除即可   【代码】 #include<bits/stdc++.h> using namespace std; #define mp make_pair #define fi first #define se second #define lson now<<1 #define rson now<<1|1 typedef long long ll;

题解 P4109 【[HEOI2015]定价】

莫名其妙冲到了最优解? 题目链接 Solution [HEOI2015]定价 题目大意:设一个数 \(x\) 去掉后缀零之后为 \(x'\),长度为 \(a\) ,定义 \(x\) 的荒谬度为 \(2a-[x'\;mod\;10\;=5]\),多组询问,求 \([L,R]\) 内荒谬度最小的数(荒谬度相同则取最小的数) 贪心 分析: 首先\(x'\)肯定是越短越好,其

P4107 [HEOI2015]兔子与樱花

题目描述 很久很久之前,森林里住着一群兔子。有一天,兔子们突然决定要去看樱花。兔子们所在森林里的樱花树很特殊。樱花树由n个树枝分叉点组成,编号从0到n-1,这n个分叉点由n-1个树枝连接,我们可以把它看成一个有根树结构,其中0号节点是根节点。这个树的每个节点上都会有一些樱花,其中第i

[HEOI2015]兔子与樱花

zz:https://www.cnblogs.com/fengzhiyuan/p/8119415.html 很久很久之前,森林里住着一群兔子。有一天,兔子们突然决定要去看樱花。兔子们所在森林里的樱花树很特殊。樱花树由n个树枝分叉点组成,编号从0到n-1,这n个分叉点由n-1个树枝连接,我们可以把它看成一个有根树结构,其中0号节点是根

bzoj 4032: [HEOI2015]最短不公共子串【dp+SAM】

第一、二问: 就是最小的最长公共长度+1,设f[i][j]为a匹配到i,b匹配到j,第一问的转移是f[i][j]=(a[i]==b[j]?f[i-1][j-1]+1:0),第二问的转移是f[i][j]=(a[i]==b[j]?f[i-1][j-1]+1:f[i][j-1]),注意这里更新最小公共长度的时候,如果f[i][j]==i就不能更新,因为不能从前面随便新加的字符,后面加的

[HEOI2015] 小Z的房间

[HEOI2015] 小Z的房间 Description 你突然有了一个大房子,房子里面有一些房间。事实上,你的房子可以看做是一个包含n*m个格子的格状矩形,每个格子是一个房间或者是一个柱子。在一开始的时候,相邻的格子之间都有墙隔着。 你想要打通一些相邻房间的墙,使得所有房间能够互相到达。在此过程