上一页 1 ··· 11 12 13 14 15 16 17 18 19 ··· 66 下一页
摘要: 题面 Description 求有多少种长度为 n 的序列 A,满足以下条件: 1 ~ n 这 n 个数在序列中各出现了一次 若第 i 个数 A[i] 的值为 i,则称 i 是稳定的。序列恰好有 m 个数是稳定的 满足条件的序列可能很多,序列数对 10^9+7 取模。 Input 第一行一个数 T, 阅读全文
posted @ 2018-12-03 09:56 Monster_Qi 阅读(189) 评论(0) 推荐(0) 编辑
摘要: "传送门" 解题思路 看到计数想容斥 $from$ $shadowice1984$大爷。首先求出原图的生成树个数比较容易,直接上矩阵树定理,但这样会多算一点东西,会把$n 2$个公司的多算进去,那我们就减掉$n 2$个公司的生成树个数,然后发现少算了$n 3$的生成树个数...以此类推。所以就容斥一 阅读全文
posted @ 2018-12-01 23:13 Monster_Qi 阅读(107) 评论(0) 推荐(0) 编辑
摘要: "传送门" 解题思路 要求这个人的排名,我们可以先求出某个人比他排名靠前的概率,然后再乘上$m 1$即为答案。求某个人比他排名靠前可以用$dp$,设$f[i][j]$表示前$i$场比赛某人的得分为$j$的概率,那么转移方程为:$f[i][j]=\sum\limits_{k=1,k!=x[i]}^(m 阅读全文
posted @ 2018-12-01 21:44 Monster_Qi 阅读(388) 评论(0) 推荐(0) 编辑
摘要: [传送门[(https://www.luogu.org/problemnew/show/CF16E) 解题思路 比较简单的状压+期望。设$f[S]$表示$S$这个状态的期望,转移时挑两条活着的鱼打架。时间复杂度$O(2^n n^2)$。 代码 cpp include include include 阅读全文
posted @ 2018-12-01 20:29 Monster_Qi 阅读(204) 评论(0) 推荐(0) 编辑
摘要: "传送门" 解题思路 比较容易的一道期望$dp$,设$f[i][j][k]$表示石头$i$个,剪刀$j$个,步子$l$个。然后转移的时候用组合数算一下就好了。 代码 cpp include include include include using namespace std; const int 阅读全文
posted @ 2018-12-01 18:49 Monster_Qi 阅读(172) 评论(0) 推荐(0) 编辑
摘要: "传送门" 解题思路 还是比较简答的一道题。首先$bfs$把每个点到其他点的最短路求出来,然后再记忆化搜索。记搜的时候猫的走法是确定的,搜一下老鼠走法就行了。 代码 cpp include include include include include using namespace std; co 阅读全文
posted @ 2018-11-30 21:25 Monster_Qi 阅读(160) 评论(0) 推荐(0) 编辑
摘要: "传送门" 解题思路 比较容易看的出来矩阵树定理。~~然后就怒送一Wa~~,这个矩阵树定理是不能直接用的。题目要求的其实是这个玩意。 $$ ans=\sum\limits_{Tree}( \prod\limits_{e\in Tree}p_e \prod\limits_{e\notin Tree}( 阅读全文
posted @ 2018-11-30 18:20 Monster_Qi 阅读(199) 评论(0) 推荐(0) 编辑
摘要: "传送门" 解题思路 矩阵树定理模板题。矩阵树定理是求图中最小生成树个数,做法是首先求出基尔霍夫矩阵,就是度数矩阵$ $邻接矩阵。然后再求出这个矩阵的行列式,行列式的求法就是任意去掉一行一列,然后高斯消元消成上三角,对角线乘积即为行列式。注意到这里有取模,所以要辗转相除。 代码 cpp includ 阅读全文
posted @ 2018-11-30 15:45 Monster_Qi 阅读(122) 评论(0) 推荐(0) 编辑
摘要: "传送门" 解题思路 $lct$维护最小生成树。我们首先按照$a$排序,然后每次加入一条边,在图中维护一棵最小生成树。用并查集判断一下$1$与$n$是否联通,如果联通的话就尝试更新答案。 代码 阅读全文
posted @ 2018-11-30 15:01 Monster_Qi 阅读(200) 评论(0) 推荐(0) 编辑
摘要: "传送门" 解题思路 一道$lct$维护动态最小生成树。刚开始写了一遍疯狂$Re$,冷静了一下重新写了一遍终于过了。首先题目中要求两点之间最大值的最小值,其实就是维护一个最小生成树,每次询问最大值。要将删边转化成加边操作,就是倒着处理,这里用$set$和$map$就比较方便。然后还要把边权转化成点权 阅读全文
posted @ 2018-11-30 11:18 Monster_Qi 阅读(146) 评论(0) 推荐(0) 编辑
上一页 1 ··· 11 12 13 14 15 16 17 18 19 ··· 66 下一页