摘要: | 题号 | 题目描述 | 解题思路 | | : | : | | | 3306 | 给出一棵带点权的有根树,支持单点修改,换根,询问x子树中的权值最小值. | 直接在DFS序上用线段树维护就好了. | | 3900 | 给出n个数对,求最小的交换次数,满足交换后每个数对相差不超过c | 压位,用$f阅读全文
posted @ 2019-02-26 09:12 CHNJZ 阅读(34) 评论(0) 编辑
摘要: A 模拟...... B 考虑保留前端的$ $,后端的$ include using namespace std; int n,T,ans; char s[105]; void work(){ scanf("%d",&n);scanf("%s",s+1);ans=n; int i=1;while(i阅读全文
posted @ 2019-04-01 11:53 CHNJZ 阅读(16) 评论(0) 编辑
摘要: 解题思路 用$g[i]$表示$k$次攻击后掉$i$滴血的概率,显然有$g[i]=C_{k}^{i}(\frac{1}{m+1})^i(\frac{m}{m+1})^{k i}$ 用$f[i]$表示英雄初始血量为$i$的期望存活轮数,那么显然有: $$ f[i]=\sum_{j=0}^{min(i+1阅读全文
posted @ 2019-03-19 18:26 CHNJZ 阅读(23) 评论(0) 编辑
摘要: 题目梗概 定义一个序列是连续的,当且仅当这个序列的最大值 最小值不超过序列长度 1. 现在有一个长度为$n$的排列,给出以每个位置为右端点的最长连续区间的长度,求满足的排列的方案数. 解题思路 如果$a[n]!=n$且有区间相交显然无解. 那么我们可以根据区间的包含关系建出一棵以$n$为根的树,用$阅读全文
posted @ 2019-03-18 18:39 CHNJZ 阅读(41) 评论(0) 编辑
摘要: 题目梗概 给出两棵1为根的树,求$d[x]+d[y] d[lca(x,y)] d'[lca(x,y)]$的最大值 解题思路 套路化简之后$(d[x]+d[y]+dis(x,y) 2 d'[lca(x,y)])/2$ 第二棵树上的lca化不掉,所以考虑在第二棵上枚举lca 先说说这题的解法,边分树的合阅读全文
posted @ 2019-03-18 18:38 CHNJZ 阅读(24) 评论(0) 编辑
摘要: 真好用... 把系数相乘看成$(a M+b) (c M+d)=a c M^2+(a d+b c) M+b d$的形式,这样FFT的精度就够用了... C++ include include include define LL long long using namespace std; define阅读全文
posted @ 2019-02-28 15:47 CHNJZ 阅读(23) 评论(0) 编辑
摘要: 贴个模板... C++ include include define LL long long using namespace std; const int maxn=2100005,tt=998244353; int n,m,a[maxn],b[maxn],re[maxn]; int qsm(in阅读全文
posted @ 2019-02-28 11:06 CHNJZ 阅读(29) 评论(0) 编辑
摘要: 题目梗概 给出两个$n n$的矩阵$A,B$,将$A,B$中的向量进行匹配,使得$A$的任意向量被匹配的向量替换后,$A$仍线性无关,求字典序最小解,保证初始时$A$线性无关. 解题思路 因为$A$是$n$维空间中的极大线性无关,所以$A$是$n$维空间的一组基,$B$中的任意向量可以用$A$的组合阅读全文
posted @ 2019-02-27 14:49 CHNJZ 阅读(13) 评论(0) 编辑
摘要: | 题号 | 题目描述 | 解题思路 | | : | : | | | 3306 | 给出一棵带点权的有根树,支持单点修改,换根,询问x子树中的权值最小值. | 直接在DFS序上用线段树维护就好了. | | 3900 | 给出n个数对,求最小的交换次数,满足交换后每个数对相差不超过c | 压位,用$f阅读全文
posted @ 2019-02-26 09:12 CHNJZ 阅读(34) 评论(0) 编辑
摘要: 题目描述 给出$n$个数,支持区间加,区间覆盖,区间第$k$小,区间的$x$次幂和.数据随机 解题思路 学ODT之前,第四个操作我是维护不来的. 第一次写ODT,ODT在数据随机有区间覆盖操作的情况下有优秀的复杂度. 关键就是用一棵平衡树维护覆盖的区间,其他就是暴力......阅读全文
posted @ 2019-02-23 09:39 CHNJZ 阅读(58) 评论(0) 编辑
摘要: 题目描述 从前有$N $张卡片,在桌上摊成了一排。每张卡片上有两个数字,一个写在上边,一个写在下 边,每个数字都是 $1 $到 $N$之间的一个整数(也包含$1$和$ N$)。同时,在所有卡片的上边的数字 中,$1$到 $N$的每个数字恰好出现了一次。下边的数字也一样。 大厨想要给这些卡片重新排个序阅读全文
posted @ 2019-01-07 20:47 CHNJZ 阅读(38) 评论(0) 编辑