[日常训练]常州集训day5】的更多相关文章

T1 Description 小$W$和小$M$一起玩拼图游戏啦~ 小$M$给小$M$一张$N$个点的图,有$M$条可选无向边,每条边有一个甜蜜值,小$W$要选$K$条边,使得任意两点间最多有一条路径,并且选择的$K$条边甜蜜值之和最大. Input 第一行三个正整数$N,M,K$. 接下来$M$行,每行三个正整数$A,B,C$表示$A,B$两点间有一条甜蜜值为$C$的无向边. Output 一行输出最大甜蜜值之和. Sample Input 5 4 3 1 2 10 1 3 9 2 3 7 4…
T1 Description 给定一个长度为$n$的正整数序列$a$.可以将序列分成若干段,定义第$i$段的权值$x_i$为这一段中所有数的最大值,特殊地,$x_0=0$.求$\sum_{i=1}^{m}|x_i-x_{i-1}|$的最小值以及划分方案数,$\sum_{i=1}^{m}(x_i-x_{i-1})^2$ 的最小值以及划分方案数,其中$m$为划分的段数. Input 第一行一个整数$n$.第二行$n$个正整数$a_1-a_n$. Output 按顺序输出四个非负整数表示答案,其中两个…
T1 Description 给定一个序列,初始为空.依次将$1-n$插入序列,其中$i$插到当前第$a_i$个数的右边($a_i=0$表示插到序列最左边).求最终序列. Input 第一行一个整数$n$.第二行$n$个正整数$a_1-a_n$. Output 输出一行$n$个整数表示最终序列,数与数之间用一个空格隔开. Sample Input 5 0 1 1 0 3 Sample Output 4 1 3 5 2 HINT $n<=10^6,0\;\leq\;a_i<i$. Solutio…
T1 Description 有$K$个石子,石子只能放在$N$条水平线与$M$条竖直线构成的网格的交点上. 求用$K$个石子最多能找到多少四边平行于坐标轴的长方形,它的四个角上都恰好放着一枚石子. Input 第一行三个整数$N,M,K$. Output 一个非负整数,即最多的满足条件的长方形数量. Sample Input 3 3 8 Sample Output 5 HINT $N\;\leq\;30000$,保证任意两点不重合,$K\;\leq\;N\;\times\;M$ Solutio…
T1 Description 给定$N$个点,问这$N$个点能构成的三角形个数. Input 第一行一个整数$N$,代表点数. 接下来$N$行,每行两个非负整数$X,Y$,表示一个点的坐标. Output 一个非负整数,即构成三角形个数. Sample Input 5 0 0 1 0 2 0 0 1 1 1 Sample Output 9 HINT $N\;\leq\;100$,保证任意两点不重合,坐标$\;\leq\;10000$. Solution 只要三点不共线就能组成三角形了.是否共线用…
Loj #6073.「2017 山东一轮集训 Day5」距离 Description 给定一棵 \(n\) 个点的边带权的树,以及一个排列$ p\(,有\)q $个询问,给定点 \(u, v, k\),设$ path(u,v) \(表示\) u$ 到 $v \(的路径,\)dist(u,v) \(表示\) u$ 到\(v\) 的距离,希望你求出 Input 第一行一个整数 \(type =0/1\)表示这个测试点的数据类型. 第二行两个整数 \(n,q\). 接下来$ n−1$ 行,每行三个整数…
「2017 山东一轮集训 Day5」苹果树 \(n\leq 40\) 折半搜索+矩阵树定理. 没有想到折半搜索. 首先我们先枚举\(k\)个好点,我们让它们一定没有用的.要满足这个条件就要使它只能和坏点相连.其他的点没有要求.这样算出来了至少\(k\)个点没有用的生成树个数,我们要得到恰好\(k\)个点的生成树个数就简单容斥一下就好了. 然后我们要得到有\(k\)个点没有用的情况下的点集的方案数.看到\(40\)这个范围我们容易想到折半搜索. 然后就没了. 但是我没写容斥,写的枚举集合划分(被吊…
题意与分析(CodeForces 551B) 这他妈哪里是日常训练,这是日常弟中弟. 题意是这样的,给出一个字符串A,再给出两个字符串B,C,求A中任意量字符交换后(不限制次数)能够得到的使B,C作为子串不重叠且出现次数最多的串. 看起来很简单对吧,做法也很简单,先排序字符,然后枚举合法的B串能在A串中出现的次数,看能有几个C串,然后求个最优解就行了.是不是很简单?然后WA了十几发,各种捉bug,太杀妈了. 这份代码看起来贼简单,这是我写的第三版了.... 这种字符串题目太苦手了QAQ 代码 #…
自闭集训 Day5 树上数据结构 前置知识 点分治 边分治 树链剖分 LCT Top Tree LCT时间复杂度 线段树每次查询是严格\(\log n\)的,然而splay维护连续段的时候,如果每次查询可以缩点,那么访问的区间数是均摊\(O(1)\)的.(??) 所以用splay维护LCT是一个log,而线段树维护就是两个log. 捉迷藏 边分治多好,干什么点分治-- 每个点开个堆维护子树最远点.开个堆维护儿子最远点的前二大的值.开个堆维护全局最大值,然后随便搞. 边分治由于每次只需要合并两个子…
自闭集训 Day5 生成函数 一般生成函数 无脑地把序列变成多项式: \[ \{a_i\}\rightarrow A(x)=\sum_{n} a_nx^n \] 形式幂级数 生成函数是一种形式幂级数.我们不关心这个函数的具体的取值,只关心多项式的系数.在需要的时候可以把\(x​\)当成任意值. 例题 求\(\{n^2\}\)的生成函数. 这个--只要知道\(\{{n+k-1\choose k-1}\}\)的生成函数是\(\frac 1 {(1+x)^k}\)就没了. 例题 简单生成函数题,不讲了…