多校训练
文章平均质量分 65
CantSayAWord
这个作者很懒,什么都没留下…
展开
-
HDU 6096 String(2017 Multi-University Training Contest 6)
题目链接:String 题意:给定NN字符串以及QQ个询问,每一个询问包括一个前缀和一个后缀,在前后缀不重叠的情况下,有多少个字符串有这个前缀和后缀。 题解:把每一个询问以“后缀+‘{’+前缀”形式连接起来组成新的字符串,并用这些字符串构成AC自动机,同时记录原询问的长度,最后把原来的NN个字符串在AC自动机中跑一遍记录长度满足条件的就能得到答案。由于可能有相同的询问,所以可以利用map或者并查原创 2017-08-16 14:33:36 · 352 阅读 · 0 评论 -
HDU 6059 Kanade's trio(2017 Multi-University Training Contest 3)
题目链接:Kanade’s trio 题意:给出一个序列A,问存在多少个不同的三元组满足Ai xor Aj<Aj xor Ak (i<j<k)A_i\ xor \ A_j <A_j\ xor \ A_k\ (i<j<k) 题解:对于每一个数,我们把它转化成30位的二进制形式,并按照序列顺序依次插入到0/1字典树中,插入过程中,我们把当前插入的数作为AkA_k,每次计算其贡献加起来即为答案。 我原创 2017-08-02 13:05:24 · 426 阅读 · 0 评论 -
HDU 6086 Rikka with String(2017 Multi-University Training Contest 3)
题目链接:Rikka with String 题意:给定nn个0101字符串和一个长度LL,问所有长度为2∗L2*L的反对称字符串(s[i]≠s[|s|−i+1],i∈[1,|s|]s[i]≠s[|s|−i+1],i∈[1,|s|])中出现所有给定字符串的种类数。 题解:我们先考虑一个简化版的问题:所有长度为LL的字符串中出现所有给定字符串的种类数。这就是一个基本的AC自动机上dpdp的问题,记原创 2017-08-16 21:23:01 · 439 阅读 · 0 评论 -
HDU 6138 Fleet of the Eternal Throne(2017 Multi-University Training Contest 8)
题目链接:Fleet of the Eternal Throne 题意:给出nn个字符串,mm次询问,每一次询问一个(x,y)(x,y),问第xx和第yy个字符串的最长公共部分使得这个部分是某一个字符串的前缀。 题解:注意到如果两个字符串同时匹配到了某一个前缀,那么这个前缀的长度就可以用来更新答案,所以我们可以直接根据前缀建立AC自动机,然后对于每次询问在AC自动机上匹配,用setset判断是否原创 2017-08-17 17:17:32 · 719 阅读 · 0 评论 -
HDU 6039 Gear Up(2017 Multi-University Training Contest 1)
题目链接:Here题意:给你一些齿轮以及齿轮之间的关系,然后每次有两种操作:1.把第x个齿轮的半径更改为y;2.给第x个齿轮一个大小为y的角速度,问所有齿轮中最大的角速度的自然对数是多少。解法:根据齿轮之间的连接关系(共角速度或者共线速度)建图,我们就得到了一片森林。每一棵树任取一个点作为参照点,然后对于操作对象所在的树单独考虑。先讨论操作1,如果被修改的节点的父节点和该节点是共角速度的,原创 2017-07-26 16:23:33 · 545 阅读 · 0 评论 -
HDU 6133 Army Formations(2017 Multi-University Training Contest 8)
题目链接:Army Formations 题意:一棵二叉树,每一个节点有一个信息aia_i,每发送一个信息需要的时间是当前时间tt加上这个信息的权值aia_i,问从每一个节点出发,发送完以这个节点作为根节点的子树中的所有信息所需要的最小时间。 题解:显然,如果我们把一个权值大的放在前面,所有在这个信息后面的信息所需要的时间都会增加,于是我们贪心的发送,即按照权值从小到大发送就是最优方法。那么问题原创 2017-08-18 12:57:17 · 589 阅读 · 0 评论 -
HDU 6139 Galaxy at War(2017 Multi-University Training Contest 8)
题目链接:Galaxy at War 题意:在一个给定的n∗mn*m的棋盘内的若干个位置(xi,yi)(x_i,y_i)有wiw_i个水晶,同时有t个冥想球和ss个污染源,每一次可以选定一个位置(u,v)(u,v),将tt个水晶移动到(u+1,v)(u+1,v)或者(u,v+1)(u,v+1),如果这个位置有冥想球,那么可以在(u+1,v)(u+1,v)和(u,v+1)(u,v+1)处制造tt个水原创 2017-08-18 15:22:32 · 712 阅读 · 0 评论 -
HDU 6068 Classic Quotation(2017 Multi-University Training Contest 4)
题目链接:Classic Quotation 题意:给定两个字符串S和T,然后给出k个询问,每次询问输入L,R,输出S的1,i和j,n拼接成的字符串中出现字符串T的期望次数。 题解:记A_i表示字符串S的[1,i]能匹配多少个T,prei=∑ij=1Aipre_i=\sum_{j=1}^{i}A_i,B_(i,j)表示T匹配完S中[1,i]的字符后kmp指针指向的位置。cnti,j=∑ik=1B原创 2017-08-19 22:02:14 · 415 阅读 · 0 评论