09 2019 档案
[校内训练19_09_10]sort
摘要:题意 给一个非负整数序列,每次问能否异或上一个正整数使得所有的数单调不减。如果能,输出最小的x,否则输出-1。单点修改。多测。要求最多一个log。 思考 只要考虑相邻的两个数。找到这两个数最高的不同的一位,那么只要考虑是一定要异或或者是一定不要异或。 代码 1 #include<bits/stdc+
阅读全文
[校内训练19_09_06]排序
摘要:题意 一个这样的算法: 现在你cnt和原始数组a,求cnt步数后a的结果。注意a是n排列。 $1 \leq n \leq 10^6,1 \leq cnt \leq \frac{n(n-1)}{2}$ 思考 对于某个i,如果j从i+1循环到了n,那么含义就是将i~n中最小的数放到第i位上,剩下的访问过
阅读全文
[校内训练19_09_06]直径
摘要:题意 构造一棵树,让它有k条直径。边权都是非负整数,要求点数不能超过5000。 $k \leq 5000000$ 思考 让树根底下分别挂着长度为a,b,c的边权为0的链,然后将链的某一端向根连一条边权为1的边,这样共有ab+ac+bc条直径。可以发现,对于数据范围内的k,可以很快地找到这样的a,b,
阅读全文
[校内训练19_09_05]ca
摘要:题意 对于任意1 ≤k≤N,求有多少个左右区分的恰有k个叶子节点的二叉树,满足对于每个节点要么没有叶子节点要么有两个节点,同时不存在一个叶子节点,使得根到它的路径上有不少于M条向左的边。 答案对998244353取模。 思考 将问题放到平面上考虑。起初在原点,我们考虑树的dfs序,每次向左走一次,得
阅读全文
[校内训练19_09_02]不同的缩写
摘要:题意 给n个字符串,要求给每个字符串选一个子串(可以不连续),并且子串互不相同。求子串最大长度的最小值,并给出一个方案。 $n \leq 100,|s_i| \leq 100$。 思考 鸽了
阅读全文
[校内训练19_09_03]c Huge Counting
摘要:题意 有一个定义在 k 维非负整点上的函数:$f(x_1,x_2,...,x_k):N_{0}^{k}->\{0,1\}$ ,定义方法如下: 若存在$j∈[1,k],x_j=0$,则$f(x_1,x_2,...,x_k)=0$ 若对$j∈[1,k]$都有$x_j=1$则$f(x_1,x_2,...,
阅读全文
[校内训练19_09_02]C
摘要:题意 给出一棵N 个节点的树,树上的每个节点都有一个权值$a_i$。 有Q 次询问,每次在树上选中两个点u, v,考虑所有在简单路径u, v 上(包括u, v)的点构成的集合S。 求$\sum_{w∈S}{a_w or dist(u,w)}$ 其中dist(u,w) 为简单路径u,w 上的边数,or
阅读全文
[校内训练19_09_02]A
摘要:题意 给出N 个形如$f_i(x) = a_i x^2 + b_i x $的二次函数。 有Q 次询问,每次给出一个x,询问$max{\{f_i(x)\}}$。$N,Q \leq 5*10^5$。 思考 首先将x大于0还是小于0分类,对于某一类全都除以x,那么就得到了一些直线。最优的答案一定在某条最上
阅读全文
[校内训练19_09_02]原样输出
摘要:题意 给出n个字符串,每个字符串的开头和结尾可以去除一些连续的子串,也可以不删。问这样删去后连成的不同字符串有多少个。要求线性。 思考 如果是一个字符串,那么建一颗SAM即可。 因为是几个字符串拼在一起,那么在某个字符串的SAM上的某一个点,随时都可以跳到下一个字符串的SAM上的某个一点。那么从后往
阅读全文
[HNOI2014]道路堵塞
摘要:这是一篇没有代码的博客。目的是在全是玄学复杂度的算法中留下有复杂度保证的算法。 原文摘自千年之狐_天才 : 靠谱做法应该是A+线段树。用A跑k短路,第一次跑到的一定是所给最短路,其次跑到的所有最短路将答案更新。如果只是单纯这样的话,是不行的,因为所有路径都会被更新一次。但是我们不难发现一个信息,假设
阅读全文
[模板]三维凸包(无讲解)
摘要:1 // luogu-judger-enable-o2 2 #include<bits/stdc++.h> 3 using namespace std; 4 typedef long double ld; 5 const int maxn=2E3+5; 6 const ld eps=1E-9; 7
阅读全文
浙公网安备 33010602011771号